home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: Tape Archive
(archive/tar).
You can browse this item here: comboot-
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| Tape Archive (archive/tar)
| magic
| Supported |
100%
| file
| POSIX tar archive (GNU)
| default
| |
99%
| file
| POSIX tar archive (GNU), directory comboot-1.0/, mode 40755 , uid 0 , gid 0 , size 0 , seconds 6137763265, user root, group system
| default
| |
98%
| file
| data
| default
| |
62%
| TrID
| TAR - Tape ARchive (GNU)
| default
| |
37%
| TrID
| TAR - Tape ARchive (directory)
| default
| |
100%
| siegfried
| x-fmt/265 Tape Archive Format
| default
| |
100%
| lsar
| Tar
| default
| |
100%
| gt2
| TAR Archiv gefunden (Auflistung ist deaktiviert)
| default
| |
100%
| disktype
| GNU tar archive
| default
| |
100%
| detectItEasy
| Archive: tar
| default
| |
100%
| binwalkID
| POSIX tar archive (GNU), owner user name: "1.0/"
| default
| |
100%
| xdgMime
| application/x-tar
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 63 6f 6d 62 6f 6f 74 2d | 31 2e 30 2f 00 00 00 00 |comboot-|1.0/....|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 20 34 30 37 | 35 35 20 00 20 20 20 20 |.... 407|55 . |
|00000070| 20 30 20 00 20 20 20 20 | 20 30 20 00 20 20 20 20 | 0 . | 0 . |
|00000080| 20 20 20 20 20 20 30 20 | 20 36 31 33 37 37 36 33 | 0 | 6137763|
|00000090| 32 36 35 20 20 31 31 33 | 35 36 00 20 35 00 00 00 |265 113|56. 5...|
|000000a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000000f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000100| 00 75 73 74 61 72 20 20 | 00 72 6f 6f 74 00 00 00 |.ustar |.root...|
|00000110| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000120| 00 00 00 00 00 00 00 00 | 00 73 79 73 74 65 6d 00 |........|.system.|
|00000130| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000140| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000150| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000160| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000170| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000180| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000190| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000001f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000200| 63 6f 6d 62 6f 6f 74 2d | 31 2e 30 2f 63 6f 6d 62 |comboot-|1.0/comb|
|00000210| 6f 6f 74 2e 35 00 00 00 | 00 00 00 00 00 00 00 00 |oot.5...|........|
|00000220| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000230| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000240| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000250| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000260| 00 00 00 00 31 30 30 36 | 34 34 20 00 20 20 20 20 |....1006|44 . |
|00000270| 20 30 20 00 20 20 20 20 | 20 30 20 00 20 20 20 20 | 0 . | 0 . |
|00000280| 20 20 20 37 35 36 34 20 | 20 36 31 33 37 37 35 33 | 7564 | 6137753|
|00000290| 33 36 32 20 20 31 33 32 | 31 34 00 20 30 00 00 00 |362 132|14. 0...|
|000002a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000002f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000300| 00 75 73 74 61 72 20 20 | 00 72 6f 6f 74 00 00 00 |.ustar |.root...|
|00000310| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000320| 00 00 00 00 00 00 00 00 | 00 73 79 73 74 65 6d 00 |........|.system.|
|00000330| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000340| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000350| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000360| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000370| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000380| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000390| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000003f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000400| 2e 54 48 20 43 4f 4d 42 | 4f 4f 54 20 35 20 22 42 |.TH COMB|OOT 5 "B|
|00000410| 6f 6f 74 20 53 65 63 74 | 6f 72 20 66 6f 72 20 62 |oot Sect|or for b|
|00000420| 6f 6f 74 69 6e 67 20 78 | 38 36 20 2e 43 4f 4d 20 |ooting x|86 .COM |
|00000430| 66 69 6c 65 73 22 20 5c | 22 20 2d 2a 2d 0a 20 5c |files" \|" -*-. \|
|00000440| 22 20 6e 72 6f 66 66 20 | 2d 2a 0a 0a 2e 53 48 20 |" nroff |-*...SH |
|00000450| 4e 41 4d 45 0a 63 6f 6d | 62 6f 6f 74 20 5c 2d 20 |NAME.com|boot \- |
|00000460| 66 6c 6f 70 70 79 20 62 | 6f 6f 74 20 73 65 63 74 |floppy b|oot sect|
|00000470| 6f 72 20 66 6f 72 20 6c | 6f 61 64 69 6e 67 20 61 |or for l|oading a|
|00000480| 20 2e 43 4f 4d 20 66 69 | 6c 65 0a 0a 2e 53 48 20 | .COM fi|le...SH |
|00000490| 53 59 4e 4f 50 53 49 53 | 0a 0a 63 61 74 20 2f 75 |SYNOPSIS|..cat /u|
|000004a0| 73 72 2f 6c 69 62 2f 62 | 6f 6f 74 73 65 63 74 6f |sr/lib/b|ootsecto|
|000004b0| 72 73 2f 63 6f 6d 62 6f | 6f 74 20 79 6f 75 72 5f |rs/combo|ot your_|
|000004c0| 63 6f 6d 5f 66 69 6c 65 | 20 3e 20 2f 64 65 76 2f |com_file| > /dev/|
|000004d0| 66 64 30 0a 0a 2e 53 48 | 20 44 45 53 43 52 49 50 |fd0...SH| DESCRIP|
|000004e0| 54 49 4f 4e 0a 2e 42 52 | 20 63 6f 6d 62 6f 6f 74 |TION..BR| comboot|
|000004f0| 0a 69 73 20 61 20 62 6f | 6f 74 20 73 65 63 74 6f |.is a bo|ot secto|
|00000500| 72 20 74 68 61 74 20 63 | 61 6e 20 62 65 20 75 73 |r that c|an be us|
|00000510| 65 64 20 74 6f 20 6c 6f | 61 64 20 61 6e 64 20 72 |ed to lo|ad and r|
|00000520| 75 6e 20 61 20 44 4f 53 | 2d 73 74 79 6c 65 20 2e |un a DOS|-style .|
|00000530| 43 4f 4d 0a 66 69 6c 65 | 2e 20 20 41 74 20 74 68 |COM.file|. At th|
|00000540| 65 20 74 69 6d 65 20 6f | 66 20 74 68 65 20 77 72 |e time o|f the wr|
|00000550| 69 74 69 6e 67 20 6f 66 | 20 74 68 69 73 20 6d 61 |iting of| this ma|
|00000560| 6e 75 61 6c 20 70 61 67 | 65 2c 20 74 68 65 20 70 |nual pag|e, the p|
|00000570| 72 69 6e 63 69 70 61 6c | 0a 75 73 65 20 6f 66 20 |rincipal|.use of |
|00000580| 63 6f 6d 62 6f 6f 74 20 | 77 61 73 20 74 6f 20 6d |comboot |was to m|
|00000590| 61 6b 65 20 66 72 65 65 | 6c 79 20 72 65 64 69 73 |ake free|ly redis|
|000005a0| 74 72 69 62 75 74 61 62 | 6c 65 20 6e 65 74 77 6f |tributab|le netwo|
|000005b0| 72 6b 20 62 6f 6f 74 20 | 66 6c 6f 70 70 69 65 73 |rk boot |floppies|
|000005c0| 0a 66 6f 72 20 4c 69 6e | 75 78 20 66 72 6f 6d 20 |.for Lin|ux from |
|000005d0| 74 68 65 0a 2e 42 52 20 | 65 74 68 65 72 62 6f 6f |the..BR |etherboo|
|000005e0| 74 0a 73 6f 66 74 77 61 | 72 65 20 70 61 63 6b 61 |t.softwa|re packa|
|000005f0| 67 65 2e 0a 2e 42 52 20 | 65 74 68 65 72 62 6f 6f |ge...BR |etherboo|
|00000600| 74 0a 63 61 6e 20 70 72 | 6f 64 75 63 65 20 2e 43 |t.can pr|oduce .C|
|00000610| 4f 4d 20 66 69 6c 65 73 | 20 66 6f 72 20 62 6f 6f |OM files| for boo|
|00000620| 74 69 6e 67 20 4c 69 6e | 75 78 20 66 72 6f 6d 20 |ting Lin|ux from |
|00000630| 61 20 6e 75 6d 62 65 72 | 20 6f 66 20 65 74 68 65 |a number| of ethe|
|00000640| 72 6e 65 74 0a 63 61 72 | 64 73 2c 20 62 75 74 20 |rnet.car|ds, but |
|00000650| 79 6f 75 20 6e 65 65 64 | 65 64 20 74 6f 20 68 61 |you need|ed to ha|
|00000660| 76 65 20 61 20 63 6f 70 | 79 20 6f 66 20 44 4f 53 |ve a cop|y of DOS|
|00000670| 20 6f 6e 20 74 68 65 20 | 64 69 73 6b 65 74 74 65 | on the |diskette|
|00000680| 20 74 6f 20 72 75 6e 0a | 74 68 65 20 2e 43 4f 4d | to run.|the .COM|
|00000690| 20 66 69 6c 65 2c 20 73 | 6f 20 74 68 65 20 64 69 | file, s|o the di|
|000006a0| 73 6b 65 74 74 65 20 69 | 6d 61 67 65 73 20 77 65 |skette i|mages we|
|000006b0| 72 65 20 6e 6f 74 20 66 | 72 65 65 6c 79 20 72 65 |re not f|reely re|
|000006c0| 64 69 73 74 72 69 62 75 | 74 61 62 6c 65 2e 0a 2e |distribu|table...|
|000006d0| 42 52 20 63 6f 6d 62 6f | 6f 74 0a 73 6f 6c 76 65 |BR combo|ot.solve|
|000006e0| 73 20 74 68 69 73 20 70 | 72 6f 62 6c 65 6d 2e 0a |s this p|roblem..|
|000006f0| 0a 59 6f 75 20 75 73 65 | 0a 2e 42 52 20 63 6f 6d |.You use|..BR com|
|00000700| 62 6f 6f 74 0a 62 79 20 | 63 6f 6e 63 61 74 65 6e |boot.by |concaten|
|00000710| 61 74 69 6e 67 20 69 74 | 20 77 69 74 68 20 74 68 |ating it| with th|
|00000720| 65 20 2e 43 4f 4d 20 66 | 69 6c 65 20 74 68 61 74 |e .COM f|ile that|
|00000730| 20 79 6f 75 0a 77 61 6e | 74 20 74 6f 20 62 6f 6f | you.wan|t to boo|
|00000740| 74 20 61 6e 64 20 74 68 | 65 6e 20 77 72 69 74 69 |t and th|en writi|
|00000750| 6e 67 20 74 68 65 20 74 | 77 6f 20 66 69 6c 65 73 |ng the t|wo files|
|00000760| 20 74 6f 67 65 74 68 65 | 72 20 74 6f 20 61 20 72 | togethe|r to a r|
|00000770| 61 77 20 66 6c 6f 70 70 | 79 0a 64 69 73 6b 2e 20 |aw flopp|y.disk. |
|00000780| 20 54 68 65 20 66 6c 6f | 70 70 79 20 69 73 20 6e | The flo|ppy is n|
|00000790| 6f 77 20 61 20 62 6f 6f | 74 61 62 6c 65 20 64 69 |ow a boo|table di|
|000007a0| 73 6b 65 74 74 65 20 77 | 68 69 63 68 20 62 6f 6f |skette w|hich boo|
|000007b0| 74 20 74 68 65 20 2e 43 | 4f 4d 20 66 69 6c 65 2e |t the .C|OM file.|
|000007c0| 0a 59 6f 75 20 73 68 6f | 75 6c 64 20 62 65 20 61 |.You sho|uld be a|
|000007d0| 62 6c 65 20 74 6f 20 77 | 72 69 74 65 20 74 68 65 |ble to w|rite the|
|000007e0| 20 73 61 6d 65 20 69 6d | 61 67 65 20 74 6f 20 61 | same im|age to a|
|000007f0| 6e 79 20 6b 69 6e 64 20 | 6f 66 20 66 6c 6f 70 70 |ny kind |of flopp|
|00000800| 79 0a 64 69 73 6b 65 74 | 74 65 20 62 65 63 61 75 |y.disket|te becau|
|00000810| 73 65 20 74 68 65 20 62 | 6f 6f 74 20 73 65 63 74 |se the b|oot sect|
|00000820| 6f 72 20 77 69 6c 6c 20 | 66 69 6e 64 20 6f 75 74 |or will |find out|
|00000830| 20 77 68 61 74 20 6b 69 | 6e 64 20 6f 66 20 64 69 | what ki|nd of di|
|00000840| 73 6b 65 74 74 65 0a 69 | 74 20 68 61 73 20 62 65 |skette.i|t has be|
|00000850| 65 6e 20 77 72 69 74 74 | 65 6e 20 74 6f 20 61 6e |en writt|en to an|
|00000860| 64 20 77 69 6c 6c 20 61 | 72 72 61 6e 67 65 20 69 |d will a|rrange i|
|00000870| 74 73 20 72 65 61 64 73 | 20 61 63 63 6f 72 64 69 |ts reads| accordi|
|00000880| 6e 67 6c 79 2e 0a 0a 2e | 53 48 20 54 48 45 4f 52 |ngly....|SH THEOR|
|00000890| 59 20 4f 46 20 4f 50 45 | 52 41 54 49 4f 4e 0a 0a |Y OF OPE|RATION..|
|000008a0| 2e 43 4f 4d 20 66 69 6c | 65 73 20 72 75 6e 20 69 |.COM fil|es run i|
|000008b0| 6e 20 72 65 61 6c 20 6d | 6f 64 65 20 61 6e 64 20 |n real m|ode and |
|000008c0| 65 78 70 65 63 74 20 74 | 6f 20 68 61 76 65 20 74 |expect t|o have t|
|000008d0| 68 65 69 72 20 73 74 61 | 72 74 20 61 64 64 72 65 |heir sta|rt addre|
|000008e0| 73 73 0a 61 74 20 30 78 | 31 30 30 20 28 32 35 36 |ss.at 0x|100 (256|
|000008f0| 20 64 65 63 69 6d 61 6c | 29 20 62 79 74 65 73 20 | decimal|) bytes |
|00000900| 61 66 74 65 72 20 74 68 | 65 20 73 74 61 72 74 20 |after th|e start |
|00000910| 6f 66 20 74 68 65 20 63 | 6f 64 65 20 73 65 67 6d |of the c|ode segm|
|00000920| 65 6e 74 0a 28 74 68 65 | 20 61 64 64 72 65 73 73 |ent.(the| address|
|00000930| 20 70 6f 69 6e 74 65 64 | 20 74 6f 20 62 79 20 74 | pointed| to by t|
|00000940| 68 65 20 69 33 38 36 20 | 43 53 20 72 65 67 69 73 |he i386 |CS regis|
|00000950| 74 65 72 29 2e 0a 2e 42 | 52 20 63 6f 6d 62 6f 6f |ter)...B|R comboo|
|00000960| 74 0a 63 75 72 72 65 6e | 74 6c 79 20 6c 6f 61 64 |t.curren|tly load|
|00000970| 73 20 69 74 73 20 74 61 | 72 67 65 74 20 66 69 6c |s its ta|rget fil|
|00000980| 65 20 61 74 20 30 78 31 | 30 30 30 30 20 28 36 34 |e at 0x1|0000 (64|
|00000990| 20 6b 69 6c 6f 62 79 74 | 65 73 29 2c 20 61 6c 74 | kilobyt|es), alt|
|000009a0| 68 6f 75 67 68 0a 74 68 | 69 73 20 63 61 6e 20 62 |hough.th|is can b|
|000009b0| 65 20 63 68 61 6e 67 65 | 64 20 62 79 20 65 64 69 |e change|d by edi|
|000009c0| 74 74 69 6e 67 20 69 6e | 20 53 59 53 53 45 47 20 |tting in| SYSSEG |
|000009d0| 70 61 72 61 6d 65 74 65 | 72 20 6f 66 20 63 6f 6d |paramete|r of com|
|000009e0| 62 6f 6f 74 2e 53 20 69 | 6e 0a 74 68 65 20 73 6f |boot.S i|n.the so|
|000009f0| 75 72 63 65 20 74 72 65 | 65 2e 0a 0a 53 69 6e 63 |urce tre|e...Sinc|
|00000a00| 65 20 2e 43 4f 4d 20 66 | 69 6c 65 73 20 61 72 65 |e .COM f|iles are|
|00000a10| 20 6c 69 6d 69 74 65 64 | 20 74 6f 20 36 34 20 6b | limited| to 64 k|
|00000a20| 69 6c 6f 62 79 74 65 73 | 20 62 79 20 44 4f 53 20 |ilobytes| by DOS |
|00000a30| 61 6e 64 20 61 6c 6c 20 | 66 6c 6f 70 70 79 0a 64 |and all |floppy.d|
|00000a40| 69 73 6b 73 20 61 72 65 | 20 6c 61 72 67 65 72 20 |isks are| larger |
|00000a50| 74 68 61 6e 20 36 34 20 | 6b 69 6c 6f 62 79 74 65 |than 64 |kilobyte|
|00000a60| 73 20 61 6e 64 20 74 68 | 65 20 63 6f 6e 74 65 6e |s and th|e conten|
|00000a70| 74 73 20 6f 66 20 6d 65 | 6d 6f 72 79 20 61 74 0a |ts of me|mory at.|
|00000a80| 62 6f 6f 74 20 74 69 6d | 65 20 69 73 20 75 6e 64 |boot tim|e is und|
|00000a90| 65 66 69 6e 65 64 20 61 | 6e 79 77 61 79 2c 20 63 |efined a|nyway, c|
|00000aa0| 6f 6d 62 6f 6f 74 20 6a | 75 73 74 20 6c 6f 61 64 |omboot j|ust load|
|00000ab0| 73 20 36 34 20 6b 69 6c | 6f 62 79 74 65 73 20 61 |s 64 kil|obytes a|
|00000ac0| 6e 64 0a 6a 75 6d 70 73 | 20 74 6f 20 69 74 20 72 |nd.jumps| to it r|
|00000ad0| 65 67 61 72 64 6c 65 73 | 73 20 6f 66 20 74 68 65 |egardles|s of the|
|00000ae0| 20 61 63 74 75 61 6c 20 | 73 69 7a 65 20 6f 66 20 | actual |size of |
|00000af0| 74 68 65 20 2e 43 4f 4d | 20 66 69 6c 65 2e 20 20 |the .COM| file. |
|00000b00| 49 66 20 79 6f 75 0a 77 | 61 6e 74 20 74 6f 20 6d |If you.w|ant to m|
|00000b10| 61 6b 65 20 61 20 62 6f | 6f 74 20 73 65 63 74 6f |ake a bo|ot secto|
|00000b20| 72 20 74 68 61 74 20 77 | 69 6c 6c 20 72 75 6e 20 |r that w|ill run |
|00000b30| 73 6c 69 67 68 74 6c 79 | 20 66 61 73 74 65 72 20 |slightly| faster |
|00000b40| 62 79 20 6f 6e 6c 79 20 | 6c 6f 61 64 69 6e 67 0a |by only |loading.|
|00000b50| 74 68 65 20 61 63 74 75 | 61 6c 20 6e 75 6d 62 65 |the actu|al numbe|
|00000b60| 72 20 6f 66 20 73 65 63 | 74 6f 72 73 20 79 6f 75 |r of sec|tors you|
|00000b70| 20 6e 65 65 64 2c 20 79 | 6f 75 20 63 61 6e 20 65 | need, y|ou can e|
|00000b80| 64 69 74 20 74 68 65 20 | 73 6f 75 72 63 65 20 63 |dit the |source c|
|00000b90| 6f 64 65 0a 28 63 6f 6d | 62 6f 6f 74 2e 53 29 20 |ode.(com|boot.S) |
|00000ba0| 61 6e 64 20 63 68 61 6e | 67 65 20 74 68 65 20 70 |and chan|ge the p|
|00000bb0| 61 72 61 6d 65 74 65 72 | 20 53 59 53 53 49 5a 45 |arameter| SYSSIZE|
|00000bc0| 20 74 6f 20 74 68 65 20 | 73 69 7a 65 20 6f 66 20 | to the |size of |
|00000bd0| 79 6f 75 72 0a 66 69 6c | 65 20 69 6e 20 31 36 20 |your.fil|e in 16 |
|00000be0| 62 79 74 65 20 62 6c 6f | 63 6b 73 20 28 69 2e 65 |byte blo|cks (i.e|
|00000bf0| 2e 2c 20 28 66 69 6c 65 | 5f 73 69 7a 65 2b 31 35 |., (file|_size+15|
|00000c00| 29 2f 31 36 29 2e 20 20 | 49 6e 20 67 65 6e 65 72 |)/16). |In gener|
|00000c10| 61 6c 2c 20 74 68 65 0a | 6c 6f 61 64 69 6e 67 20 |al, the.|loading |
|00000c20| 77 69 74 68 20 74 68 65 | 20 67 65 6e 65 72 69 63 |with the| generic|
|00000c30| 20 63 6f 6d 62 6f 6f 74 | 20 62 6f 6f 74 20 73 65 | comboot| boot se|
|00000c40| 63 74 6f 72 20 67 6f 65 | 73 20 62 79 20 71 75 69 |ctor goe|s by qui|
|00000c50| 63 6b 6c 79 20 65 6e 6f | 75 67 68 0a 74 68 61 74 |ckly eno|ugh.that|
|00000c60| 20 69 74 20 69 73 20 70 | 72 6f 62 61 62 6c 79 20 | it is p|robably |
|00000c70| 6e 6f 74 20 77 6f 72 74 | 68 20 74 68 65 20 62 6f |not wort|h the bo|
|00000c80| 74 68 65 72 20 6d 61 6b | 69 6e 67 20 61 20 73 70 |ther mak|ing a sp|
|00000c90| 65 63 69 61 6c 20 62 6f | 6f 74 20 73 65 63 74 6f |ecial bo|ot secto|
|00000ca0| 72 0a 74 6f 20 62 6f 6f | 74 20 61 20 73 6d 61 6c |r.to boo|t a smal|
|00000cb0| 6c 65 72 20 2e 43 4f 4d | 20 66 69 6c 65 20 73 6c |ler .COM| file sl|
|00000cc0| 69 67 68 74 6c 79 20 6d | 6f 72 65 20 71 75 69 63 |ightly m|ore quic|
|00000cd0| 6b 6c 79 2e 0a 0a 4f 66 | 20 63 6f 75 72 73 65 2c |kly...Of| course,|
|00000ce0| 20 44 4f 53 20 69 73 20 | 6e 6f 74 20 6c 6f 61 64 | DOS is |not load|
|00000cf0| 65 64 20 77 68 65 6e 20 | 79 6f 75 20 75 73 65 20 |ed when |you use |
|00000d00| 63 6f 6d 62 6f 6f 74 2c | 20 73 6f 20 74 68 65 73 |comboot,| so thes|
|00000d10| 65 20 2e 43 4f 4d 20 66 | 69 6c 65 73 0a 63 61 6e |e .COM f|iles.can|
|00000d20| 6e 6f 74 20 6d 61 6b 65 | 20 61 6e 79 20 63 61 6c |not make| any cal|
|00000d30| 6c 73 20 74 6f 20 44 4f | 53 2c 20 61 6c 74 68 6f |ls to DO|S, altho|
|00000d40| 75 67 68 20 74 68 65 79 | 20 63 61 6e 20 63 61 6c |ugh they| can cal|
|00000d50| 6c 20 74 68 65 20 42 49 | 4f 53 2e 0a 0a 2e 53 48 |l the BI|OS....SH|
|00000d60| 20 45 58 41 4d 50 4c 45 | 53 0a 54 6f 20 6d 61 6b | EXAMPLE|S.To mak|
|00000d70| 65 20 61 20 62 6f 6f 74 | 61 62 6c 65 20 66 6c 6f |e a boot|able flo|
|00000d80| 70 70 79 20 66 72 6f 6d | 20 74 68 65 20 4e 45 2d |ppy from| the NE-|
|00000d90| 32 30 30 30 20 65 74 68 | 65 72 6e 65 74 20 62 6f |2000 eth|ernet bo|
|00000da0| 6f 74 20 66 69 6c 65 20 | 28 6e 65 2e 6f 29 0a 70 |ot file |(ne.o).p|
|00000db0| 72 6f 64 75 63 65 64 20 | 62 79 20 74 68 65 20 65 |roduced |by the e|
|00000dc0| 74 68 65 72 62 6f 6f 74 | 20 73 6f 66 74 77 61 72 |therboot| softwar|
|00000dd0| 65 20 70 61 63 6b 61 67 | 65 2c 20 79 6f 75 20 77 |e packag|e, you w|
|00000de0| 6f 75 6c 64 20 74 79 70 | 65 20 74 68 65 0a 66 6f |ould typ|e the.fo|
|00000df0| 6c 6c 6f 77 69 6e 67 3a | 0a 0a 09 63 61 74 20 2f |llowing:|...cat /|
|00000e00| 75 73 72 2f 6c 69 62 2f | 62 6f 6f 74 73 65 63 74 |usr/lib/|bootsect|
|00000e10| 6f 72 73 2f 63 6f 6d 62 | 6f 6f 74 20 6e 65 2e 6f |ors/comb|oot ne.o|
|00000e20| 20 3e 20 2f 64 65 76 2f | 66 64 30 0a 0a 54 6f 20 | > /dev/|fd0..To |
|00000e30| 6d 61 6b 65 20 61 20 62 | 6f 6f 74 61 62 6c 65 20 |make a b|ootable |
|00000e40| 66 6c 6f 70 70 79 20 66 | 72 6f 6d 20 74 68 65 20 |floppy f|rom the |
|00000e50| 33 63 35 30 39 20 65 74 | 68 65 72 6e 65 74 20 62 |3c509 et|hernet b|
|00000e60| 6f 6f 74 20 66 69 6c 65 | 20 28 33 63 35 30 39 2e |oot file| (3c509.|
|00000e70| 6f 29 0a 70 72 6f 64 75 | 63 65 64 20 62 79 20 74 |o).produ|ced by t|
|00000e80| 68 65 20 65 74 68 65 72 | 62 6f 6f 74 20 73 6f 66 |he ether|boot sof|
|00000e90| 74 77 61 72 65 20 70 61 | 63 6b 61 67 65 2c 20 79 |tware pa|ckage, y|
|00000ea0| 6f 75 20 77 6f 75 6c 64 | 20 74 79 70 65 20 74 68 |ou would| type th|
|00000eb0| 65 0a 66 6f 6c 6c 6f 77 | 69 6e 67 3a 0a 0a 09 63 |e.follow|ing:...c|
|00000ec0| 61 74 20 2f 75 73 72 2f | 6c 69 62 2f 62 6f 6f 74 |at /usr/|lib/boot|
|00000ed0| 73 65 63 74 6f 72 73 2f | 63 6f 6d 62 6f 6f 74 20 |sectors/|comboot |
|00000ee0| 33 63 35 30 39 2e 6f 20 | 3e 20 2f 64 65 76 2f 66 |3c509.o |> /dev/f|
|00000ef0| 64 30 0a 0a 2e 53 48 20 | 41 55 54 48 4f 52 53 0a |d0...SH |AUTHORS.|
|00000f00| 2e 42 52 20 63 6f 6d 62 | 6f 6f 74 0a 69 73 20 64 |.BR comb|oot.is d|
|00000f10| 65 72 69 76 65 64 20 66 | 72 6f 6d 20 74 68 65 20 |erived f|rom the |
|00000f20| 62 6f 6f 74 20 73 65 63 | 74 6f 72 20 69 6e 20 74 |boot sec|tor in t|
|00000f30| 68 65 20 31 2e 33 2e 39 | 35 20 4c 69 6e 75 78 20 |he 1.3.9|5 Linux |
|00000f40| 6b 65 72 6e 65 6c 0a 69 | 6e 20 61 72 63 68 2f 69 |kernel.i|n arch/i|
|00000f50| 33 38 36 2f 62 6f 6f 74 | 2f 62 6f 6f 74 73 65 63 |386/boot|/bootsec|
|00000f60| 74 2e 53 2c 20 77 68 69 | 63 68 20 77 61 73 20 77 |t.S, whi|ch was w|
|00000f70| 72 69 74 74 65 6e 20 62 | 79 20 4c 69 6e 75 73 20 |ritten b|y Linus |
|00000f80| 54 6f 72 76 61 6c 64 73 | 2c 0a 44 72 65 77 20 45 |Torvalds|,.Drew E|
|00000f90| 63 6b 68 61 72 64 74 2c | 20 61 6e 64 20 42 72 75 |ckhardt,| and Bru|
|00000fa0| 63 65 20 45 76 61 6e 73 | 2e 20 20 63 6f 6d 62 6f |ce Evans|. combo|
|00000fb0| 6f 74 20 69 73 20 61 20 | 65 73 73 65 6e 74 69 61 |ot is a |essentia|
|00000fc0| 6c 6c 79 20 73 74 72 69 | 70 70 65 64 0a 64 6f 77 |lly stri|pped.dow|
|00000fd0| 6e 20 61 6e 64 20 73 6c | 69 67 68 74 6c 79 20 6d |n and sl|ightly m|
|00000fe0| 6f 64 69 66 69 65 64 20 | 76 65 72 73 69 6f 6e 20 |odified |version |
|00000ff0| 74 68 65 20 4c 69 6e 75 | 78 20 66 6c 6f 70 70 79 |the Linu|x floppy|
|00001000| 20 62 6f 6f 74 20 73 65 | 63 74 6f 72 2e 0a 54 68 | boot se|ctor..Th|
|00001010| 69 73 20 61 64 61 70 74 | 61 74 69 6f 6e 20 77 61 |is adapt|ation wa|
|00001020| 73 20 64 6f 6e 65 20 62 | 79 20 41 64 61 6d 20 52 |s done b|y Adam R|
|00001030| 69 63 68 74 65 72 2c 20 | 77 68 6f 20 61 6c 73 6f |ichter, |who also|
|00001040| 20 77 72 6f 74 65 20 74 | 68 69 73 20 6d 61 6e 75 | wrote t|his manu|
|00001050| 61 6c 20 70 61 67 65 2e | 0a 0a 54 68 65 20 73 6f |al page.|..The so|
|00001060| 75 72 63 65 20 74 72 65 | 65 20 66 6f 72 0a 2e 42 |urce tre|e for..B|
|00001070| 52 20 63 6f 6d 62 6f 6f | 74 0a 61 6c 73 6f 20 75 |R comboo|t.also u|
|00001080| 73 65 73 20 74 68 65 20 | 61 73 38 36 20 61 6e 64 |ses the |as86 and|
|00001090| 20 6c 64 38 36 20 75 74 | 69 6c 69 74 69 65 73 20 | ld86 ut|ilities |
|000010a0| 66 6f 72 20 63 6f 6d 70 | 69 6c 69 6e 67 20 61 6e |for comp|iling an|
|000010b0| 64 20 6c 69 6e 6b 69 6e | 67 0a 72 65 61 6c 20 6d |d linkin|g.real m|
|000010c0| 6f 64 65 20 61 73 73 65 | 6d 62 6c 65 72 20 66 69 |ode asse|mbler fi|
|000010d0| 6c 65 73 20 61 73 20 4d | 69 6e 69 78 20 65 78 65 |les as M|inix exe|
|000010e0| 63 75 74 61 62 6c 65 73 | 20 75 6e 64 65 72 20 4c |cutables| under L|
|000010f0| 69 6e 75 78 2c 20 77 68 | 69 63 68 0a 77 65 72 65 |inux, wh|ich.were|
|00001100| 20 77 72 69 74 74 65 6e | 20 62 79 20 44 6f 75 67 | written| by Doug|
|00001110| 20 45 76 61 6e 73 2e 0a | 0a 54 68 65 0a 2e 42 52 | Evans..|.The..BR|
|00001120| 20 6d 61 6b 65 62 6f 6f | 74 73 65 63 74 0a 70 72 | makeboo|tsect.pr|
|00001130| 6f 67 72 61 6d 20 75 73 | 65 64 20 69 6e 20 74 68 |ogram us|ed in th|
|00001140| 65 20 73 6f 75 72 63 65 | 20 74 72 65 65 20 74 6f |e source| tree to|
|00001150| 20 65 78 74 72 61 63 74 | 20 61 20 35 31 32 20 62 | extract| a 512 b|
|00001160| 79 74 65 20 62 6f 6f 74 | 20 73 65 63 74 6f 72 20 |yte boot| sector |
|00001170| 66 72 6f 6d 0a 61 20 4d | 69 6e 69 78 20 65 78 65 |from.a M|inix exe|
|00001180| 63 75 74 61 62 6c 65 20 | 69 73 20 61 20 73 74 72 |cutable |is a str|
|00001190| 69 70 70 65 64 20 64 6f | 77 6e 20 76 65 72 73 69 |ipped do|wn versi|
|000011a0| 6f 6e 20 6f 66 20 61 72 | 63 68 2f 69 33 38 36 2f |on of ar|ch/i386/|
|000011b0| 62 6f 6f 74 2f 74 6f 6f | 6c 73 2f 62 75 69 6c 64 |boot/too|ls/build|
|000011c0| 2e 63 0a 66 72 6f 6d 20 | 74 68 65 20 6c 69 6e 75 |.c.from |the linu|
|000011d0| 78 20 31 2e 33 2e 39 35 | 20 6b 65 72 6e 65 6c 20 |x 1.3.95| kernel |
|000011e0| 73 6f 75 72 63 65 20 74 | 72 65 65 2e 0a 0a 2e 53 |source t|ree....S|
|000011f0| 48 20 42 55 47 53 0a 49 | 74 20 69 73 20 64 65 62 |H BUGS.I|t is deb|
|00001200| 61 74 61 62 6c 65 20 77 | 68 61 74 20 74 68 65 20 |atable w|hat the |
|00001210| 63 6f 6d 62 6f 6f 74 20 | 73 6f 75 72 63 65 20 74 |comboot |source t|
|00001220| 72 65 65 20 73 68 6f 75 | 6c 64 20 64 6f 20 6f 6e |ree shou|ld do on|
|00001230| 20 61 20 6e 6f 6e 2d 69 | 6e 74 65 6c 0a 70 6c 61 | a non-i|ntel.pla|
|00001240| 74 66 6f 72 6d 2e 20 20 | 43 75 72 72 65 6e 74 6c |tform. |Currentl|
|00001250| 79 2c 20 63 6f 6d 62 6f | 6f 74 20 77 69 6c 6c 20 |y, combo|ot will |
|00001260| 62 75 69 6c 64 20 74 68 | 65 20 73 61 6d 65 20 69 |build th|e same i|
|00001270| 6e 74 65 6c 20 62 69 6e | 61 72 79 20 69 6d 61 67 |ntel bin|ary imag|
|00001280| 65 0a 74 68 61 74 20 69 | 74 20 77 6f 75 6c 64 20 |e.that i|t would |
|00001290| 6f 6e 20 61 6e 20 69 6e | 74 65 6c 20 70 6c 61 74 |on an in|tel plat|
|000012a0| 66 6f 72 6d 2e 20 20 53 | 69 6e 63 65 20 2e 43 4f |form. S|ince .CO|
|000012b0| 4d 20 66 69 6c 65 73 20 | 61 72 65 20 61 6e 20 69 |M files |are an i|
|000012c0| 6e 74 65 6c 2d 69 73 6d | 2c 0a 74 68 69 73 20 69 |ntel-ism|,.this i|
|000012d0| 73 20 70 72 6f 62 61 62 | 6c 79 20 74 68 65 20 63 |s probab|ly the c|
|000012e0| 6f 72 72 65 63 74 20 74 | 68 69 6e 67 20 74 6f 20 |orrect t|hing to |
|000012f0| 64 6f 2e 20 20 41 72 65 | 20 74 68 65 72 65 20 2e |do. Are| there .|
|00001300| 43 4f 4d 20 66 69 6c 65 | 20 75 6e 64 65 72 0a 57 |COM file| under.W|
|00001310| 69 6e 64 6f 77 73 20 4e | 54 20 66 6f 72 20 44 69 |indows N|T for Di|
|00001320| 67 69 74 61 6c 20 41 6c | 70 68 61 3f 0a 0a 2e 53 |gital Al|pha?...S|
|00001330| 48 20 4d 41 49 4e 54 41 | 49 4e 45 52 0a 50 6c 65 |H MAINTA|INER.Ple|
|00001340| 61 73 65 20 73 65 6e 64 | 20 62 75 67 20 72 65 70 |ase send| bug rep|
|00001350| 6f 72 74 73 20 74 6f 20 | 63 6f 6d 62 6f 6f 74 2d |orts to |comboot-|
|00001360| 62 75 67 73 40 79 67 67 | 64 72 61 73 69 6c 2e 63 |bugs@ygg|drasil.c|
|00001370| 6f 6d 2e 0a 00 00 00 00 | 00 00 00 00 00 00 00 00 |om......|........|
|00001380| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001390| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000013f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001400| 63 6f 6d 62 6f 6f 74 2d | 31 2e 30 2f 4d 61 6b 65 |comboot-|1.0/Make|
|00001410| 66 69 6c 65 00 00 00 00 | 00 00 00 00 00 00 00 00 |file....|........|
|00001420| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001430| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001440| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001450| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001460| 00 00 00 00 31 30 30 36 | 34 34 20 00 20 20 20 20 |....1006|44 . |
|00001470| 20 30 20 00 20 20 20 20 | 20 30 20 00 20 20 20 20 | 0 . | 0 . |
|00001480| 20 20 20 31 30 36 33 20 | 20 36 31 33 37 37 34 33 | 1063 | 6137743|
|00001490| 32 37 33 20 20 31 33 31 | 31 30 00 20 30 00 00 00 |273 131|10. 0...|
|000014a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000014f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001500| 00 75 73 74 61 72 20 20 | 00 72 6f 6f 74 00 00 00 |.ustar |.root...|
|00001510| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001520| 00 00 00 00 00 00 00 00 | 00 73 79 73 74 65 6d 00 |........|.system.|
|00001530| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001540| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001550| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001560| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001570| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001580| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001590| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000015f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001600| 23 20 54 68 69 73 20 6d | 61 6b 65 66 69 6c 65 20 |# This m|akefile |
|00001610| 72 65 71 75 69 72 65 73 | 20 47 4e 55 20 4d 61 6b |requires| GNU Mak|
|00001620| 65 2e 0a 41 53 38 36 3d | 20 61 73 38 36 0a 4c 44 |e..AS86=| as86.LD|
|00001630| 38 36 3d 20 6c 64 38 36 | 0a 0a 54 41 52 47 45 54 |86= ld86|..TARGET|
|00001640| 53 3d 09 63 6f 6d 62 6f | 6f 74 0a 70 72 65 66 69 |S=.combo|ot.prefi|
|00001650| 78 3d 09 2f 75 73 72 0a | 4c 49 42 44 49 52 3d 20 |x=./usr.|LIBDIR= |
|00001660| 24 28 70 72 65 66 69 78 | 29 2f 6c 69 62 0a 4d 41 |$(prefix|)/lib.MA|
|00001670| 4e 44 49 52 3d 20 24 28 | 70 72 65 66 69 78 29 2f |NDIR= $(|prefix)/|
|00001680| 6d 61 6e 0a 0a 61 6c 6c | 3a 20 24 28 54 41 52 47 |man..all|: $(TARG|
|00001690| 45 54 53 29 0a 0a 63 6c | 65 61 6e 3a 0a 09 2d 72 |ETS)..cl|ean:..-r|
|000016a0| 6d 20 2d 66 20 63 6f 6d | 62 6f 6f 74 2e 73 20 2a |m -f com|boot.s *|
|000016b0| 2e 6f 38 36 20 2a 2e 6f | 38 36 5f 6c 69 6e 6b 65 |.o86 *.o|86_linke|
|000016c0| 64 20 6d 61 6b 65 62 6f | 6f 74 73 65 63 74 20 24 |d makebo|otsect $|
|000016d0| 28 54 41 52 47 45 54 53 | 29 20 2a 7e 0a 0a 69 6e |(TARGETS|) *~..in|
|000016e0| 73 74 61 6c 6c 3a 20 61 | 6c 6c 0a 09 6d 6b 64 69 |stall: a|ll..mkdi|
|000016f0| 72 20 2d 70 20 24 28 4c | 49 42 44 49 52 29 2f 62 |r -p $(L|IBDIR)/b|
|00001700| 6f 6f 74 73 65 63 74 6f | 72 73 20 24 28 4d 41 4e |ootsecto|rs $(MAN|
|00001710| 44 49 52 29 2f 6d 61 6e | 35 0a 09 69 6e 73 74 61 |DIR)/man|5..insta|
|00001720| 6c 6c 20 63 6f 6d 62 6f | 6f 74 20 24 28 4c 49 42 |ll combo|ot $(LIB|
|00001730| 44 49 52 29 2f 62 6f 6f | 74 73 65 63 74 6f 72 73 |DIR)/boo|tsectors|
|00001740| 0a 09 69 6e 73 74 61 6c | 6c 20 63 6f 6d 62 6f 6f |..instal|l comboo|
|00001750| 74 2e 35 20 24 28 4d 41 | 4e 44 49 52 29 2f 6d 61 |t.5 $(MA|NDIR)/ma|
|00001760| 6e 35 0a 0a 25 2e 73 3a | 20 25 2e 53 0a 09 24 28 |n5..%.s:| %.S..$(|
|00001770| 43 43 29 20 2d 74 72 61 | 64 69 74 69 6f 6e 61 6c |CC) -tra|ditional|
|00001780| 20 2d 45 20 2d 6f 20 24 | 40 20 24 3c 0a 0a 25 2e | -E -o $|@ $<..%.|
|00001790| 6f 38 36 3a 20 25 2e 73 | 0a 09 61 73 38 36 20 2d |o86: %.s|..as86 -|
|000017a0| 30 20 2d 61 20 2d 6f 20 | 24 40 20 24 3c 0a 0a 25 |0 -a -o |$@ $<..%|
|000017b0| 2e 6f 38 36 5f 6c 69 6e | 6b 65 64 3a 20 25 2e 6f |.o86_lin|ked: %.o|
|000017c0| 38 36 0a 09 6c 64 38 36 | 20 2d 30 20 2d 73 20 2d |86..ld86| -0 -s -|
|000017d0| 6f 20 24 40 20 24 3c 0a | 0a 63 6f 6d 62 6f 6f 74 |o $@ $<.|.comboot|
|000017e0| 3a 20 63 6f 6d 62 6f 6f | 74 2e 6f 38 36 5f 6c 69 |: comboo|t.o86_li|
|000017f0| 6e 6b 65 64 20 6d 61 6b | 65 62 6f 6f 74 73 65 63 |nked mak|ebootsec|
|00001800| 74 0a 09 2e 2f 6d 61 6b | 65 62 6f 6f 74 73 65 63 |t.../mak|ebootsec|
|00001810| 74 20 2e 2f 63 6f 6d 62 | 6f 6f 74 2e 6f 38 36 5f |t ./comb|oot.o86_|
|00001820| 6c 69 6e 6b 65 64 20 3e | 20 2e 2f 63 6f 6d 62 6f |linked >| ./combo|
|00001830| 6f 74 0a 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |ot......|........|
|00001840| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001850| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001860| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001870| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001880| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001890| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000018a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000018b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000018c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000018d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000018e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000018f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001900| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001910| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001920| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001930| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001940| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001950| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001960| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001970| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001980| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001990| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000019a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000019b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000019c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000019d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000019e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000019f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a00| 63 6f 6d 62 6f 6f 74 2d | 31 2e 30 2f 6d 61 6b 65 |comboot-|1.0/make|
|00001a10| 62 6f 6f 74 73 65 63 74 | 2e 63 00 00 00 00 00 00 |bootsect|.c......|
|00001a20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001a60| 00 00 00 00 31 30 30 36 | 34 34 20 00 20 20 20 20 |....1006|44 . |
|00001a70| 20 30 20 00 20 20 20 20 | 20 30 20 00 20 20 20 20 | 0 . | 0 . |
|00001a80| 20 20 20 36 30 36 37 20 | 20 36 31 33 37 37 33 34 | 6067 | 6137734|
|00001a90| 36 35 30 20 20 31 34 33 | 30 34 00 20 30 00 00 00 |650 143|04. 0...|
|00001aa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ab0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ac0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ad0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ae0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001af0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b00| 00 75 73 74 61 72 20 20 | 00 72 6f 6f 74 00 00 00 |.ustar |.root...|
|00001b10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b20| 00 00 00 00 00 00 00 00 | 00 73 79 73 74 65 6d 00 |........|.system.|
|00001b30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00001c00| 2f 2a 0a 20 2a 20 20 6c | 69 6e 75 78 2f 74 6f 6f |/*. * l|inux/too|
|00001c10| 6c 73 2f 62 75 69 6c 64 | 2e 63 0a 20 2a 0a 20 2a |ls/build|.c. *. *|
|00001c20| 20 20 43 6f 70 79 72 69 | 67 68 74 20 28 43 29 20 | Copyri|ght (C) |
|00001c30| 31 39 39 31 2c 20 31 39 | 39 32 20 20 4c 69 6e 75 |1991, 19|92 Linu|
|00001c40| 73 20 54 6f 72 76 61 6c | 64 73 0a 20 2a 2f 0a 0a |s Torval|ds. */..|
|00001c50| 2f 2a 0a 20 2a 20 54 68 | 69 73 20 66 69 6c 65 20 |/*. * Th|is file |
|00001c60| 62 75 69 6c 64 73 20 61 | 20 64 69 73 6b 2d 69 6d |builds a| disk-im|
|00001c70| 61 67 65 20 66 72 6f 6d | 20 74 68 72 65 65 20 64 |age from| three d|
|00001c80| 69 66 66 65 72 65 6e 74 | 20 66 69 6c 65 73 3a 0a |ifferent| files:.|
|00001c90| 20 2a 0a 20 2a 20 2d 20 | 62 6f 6f 74 73 65 63 74 | *. * - |bootsect|
|00001ca0| 3a 20 65 78 61 63 74 6c | 79 20 35 31 32 20 62 79 |: exactl|y 512 by|
|00001cb0| 74 65 73 20 6f 66 20 38 | 30 38 36 20 6d 61 63 68 |tes of 8|086 mach|
|00001cc0| 69 6e 65 20 63 6f 64 65 | 2c 20 6c 6f 61 64 73 20 |ine code|, loads |
|00001cd0| 74 68 65 20 72 65 73 74 | 0a 20 2a 20 2d 20 73 65 |the rest|. * - se|
|00001ce0| 74 75 70 3a 20 38 30 38 | 36 20 6d 61 63 68 69 6e |tup: 808|6 machin|
|00001cf0| 65 20 63 6f 64 65 2c 20 | 73 65 74 73 20 75 70 20 |e code, |sets up |
|00001d00| 73 79 73 74 65 6d 20 70 | 61 72 6d 0a 20 2a 20 2d |system p|arm. * -|
|00001d10| 20 73 79 73 74 65 6d 3a | 20 38 30 33 38 36 20 63 | system:| 80386 c|
|00001d20| 6f 64 65 20 66 6f 72 20 | 61 63 74 75 61 6c 20 73 |ode for |actual s|
|00001d30| 79 73 74 65 6d 0a 20 2a | 0a 20 2a 20 49 74 20 64 |ystem. *|. * It d|
|00001d40| 6f 65 73 20 73 6f 6d 65 | 20 63 68 65 63 6b 69 6e |oes some| checkin|
|00001d50| 67 20 74 68 61 74 20 61 | 6c 6c 20 66 69 6c 65 73 |g that a|ll files|
|00001d60| 20 61 72 65 20 6f 66 20 | 74 68 65 20 63 6f 72 72 | are of |the corr|
|00001d70| 65 63 74 20 74 79 70 65 | 2c 20 61 6e 64 0a 20 2a |ect type|, and. *|
|00001d80| 20 6a 75 73 74 20 77 72 | 69 74 65 73 20 74 68 65 | just wr|ites the|
|00001d90| 20 72 65 73 75 6c 74 20 | 74 6f 20 73 74 64 6f 75 | result |to stdou|
|00001da0| 74 2c 20 72 65 6d 6f 76 | 69 6e 67 20 68 65 61 64 |t, remov|ing head|
|00001db0| 65 72 73 20 61 6e 64 20 | 70 61 64 64 69 6e 67 20 |ers and |padding |
|00001dc0| 74 6f 0a 20 2a 20 74 68 | 65 20 72 69 67 68 74 20 |to. * th|e right |
|00001dd0| 61 6d 6f 75 6e 74 2e 20 | 49 74 20 61 6c 73 6f 20 |amount. |It also |
|00001de0| 77 72 69 74 65 73 20 73 | 6f 6d 65 20 73 79 73 74 |writes s|ome syst|
|00001df0| 65 6d 20 64 61 74 61 20 | 74 6f 20 73 74 64 65 72 |em data |to stder|
|00001e00| 72 2e 0a 20 2a 2f 0a 0a | 2f 2a 0a 20 2a 20 43 68 |r.. */..|/*. * Ch|
|00001e10| 61 6e 67 65 73 20 62 79 | 20 74 79 74 73 6f 20 74 |anges by| tytso t|
|00001e20| 6f 20 61 6c 6c 6f 77 20 | 72 6f 6f 74 20 64 65 76 |o allow |root dev|
|00001e30| 69 63 65 20 73 70 65 63 | 69 66 69 63 61 74 69 6f |ice spec|ificatio|
|00001e40| 6e 0a 20 2a 20 48 69 67 | 68 20 6c 6f 61 64 65 64 |n. * Hig|h loaded|
|00001e50| 20 73 74 75 66 66 20 62 | 79 20 48 61 6e 73 20 4c | stuff b|y Hans L|
|00001e60| 65 72 6d 65 6e 20 26 20 | 57 65 72 6e 65 72 20 41 |ermen & |Werner A|
|00001e70| 6c 6d 65 73 62 65 72 67 | 65 72 2c 20 46 65 62 2e |lmesberg|er, Feb.|
|00001e80| 20 31 39 39 36 0a 20 2a | 2f 0a 0a 23 69 6e 63 6c | 1996. *|/..#incl|
|00001e90| 75 64 65 20 3c 73 74 64 | 69 6f 2e 68 3e 09 2f 2a |ude <std|io.h>./*|
|00001ea0| 20 66 70 72 69 6e 74 66 | 20 2a 2f 0a 23 69 6e 63 | fprintf| */.#inc|
|00001eb0| 6c 75 64 65 20 3c 73 74 | 72 69 6e 67 2e 68 3e 0a |lude <st|ring.h>.|
|00001ec0| 23 69 6e 63 6c 75 64 65 | 20 3c 73 74 64 6c 69 62 |#include| <stdlib|
|00001ed0| 2e 68 3e 09 2f 2a 20 63 | 6f 6e 74 61 69 6e 73 20 |.h>./* c|ontains |
|00001ee0| 65 78 69 74 20 2a 2f 0a | 23 69 6e 63 6c 75 64 65 |exit */.|#include|
|00001ef0| 20 3c 73 79 73 2f 74 79 | 70 65 73 2e 68 3e 09 2f | <sys/ty|pes.h>./|
|00001f00| 2a 20 75 6e 69 73 74 64 | 2e 68 20 6e 65 65 64 73 |* unistd|.h needs|
|00001f10| 20 74 68 69 73 20 2a 2f | 0a 23 69 6e 63 6c 75 64 | this */|.#includ|
|00001f20| 65 20 3c 73 79 73 2f 73 | 74 61 74 2e 68 3e 0a 23 |e <sys/s|tat.h>.#|
|00001f30| 69 6e 63 6c 75 64 65 20 | 3c 73 79 73 2f 73 79 73 |include |<sys/sys|
|00001f40| 6d 61 63 72 6f 73 2e 68 | 3e 0a 23 69 6e 63 6c 75 |macros.h|>.#inclu|
|00001f50| 64 65 20 3c 75 6e 69 73 | 74 64 2e 68 3e 09 2f 2a |de <unis|td.h>./*|
|00001f60| 20 63 6f 6e 74 61 69 6e | 73 20 72 65 61 64 2f 77 | contain|s read/w|
|00001f70| 72 69 74 65 20 2a 2f 0a | 23 69 6e 63 6c 75 64 65 |rite */.|#include|
|00001f80| 20 3c 66 63 6e 74 6c 2e | 68 3e 0a 23 69 6e 63 6c | <fcntl.|h>.#incl|
|00001f90| 75 64 65 20 3c 6c 69 6e | 75 78 2f 61 2e 6f 75 74 |ude <lin|ux/a.out|
|00001fa0| 2e 68 3e 0a 23 69 6e 63 | 6c 75 64 65 20 3c 6c 69 |.h>.#inc|lude <li|
|00001fb0| 6e 75 78 2f 63 6f 6e 66 | 69 67 2e 68 3e 0a 23 69 |nux/conf|ig.h>.#i|
|00001fc0| 6e 63 6c 75 64 65 20 3c | 65 72 72 6e 6f 2e 68 3e |nclude <|errno.h>|
|00001fd0| 0a 0a 23 64 65 66 69 6e | 65 20 4d 49 4e 49 58 5f |..#defin|e MINIX_|
|00001fe0| 48 45 41 44 45 52 20 33 | 32 0a 0a 23 64 65 66 69 |HEADER 3|2..#defi|
|00001ff0| 6e 65 20 4e 5f 4d 41 47 | 49 43 5f 4f 46 46 53 45 |ne N_MAG|IC_OFFSE|
|00002000| 54 20 31 30 32 34 0a 23 | 69 66 6e 64 65 66 20 5f |T 1024.#|ifndef _|
|00002010| 5f 42 46 44 5f 5f 0a 73 | 74 61 74 69 63 20 69 6e |_BFD__.s|tatic in|
|00002020| 74 20 47 43 43 5f 48 45 | 41 44 45 52 20 3d 20 73 |t GCC_HE|ADER = s|
|00002030| 69 7a 65 6f 66 28 73 74 | 72 75 63 74 20 65 78 65 |izeof(st|ruct exe|
|00002040| 63 29 3b 0a 23 65 6e 64 | 69 66 0a 0a 23 69 66 64 |c);.#end|if..#ifd|
|00002050| 65 66 20 5f 5f 42 49 47 | 5f 4b 45 52 4e 45 4c 5f |ef __BIG|_KERNEL_|
|00002060| 5f 0a 23 64 65 66 69 6e | 65 20 53 59 53 5f 53 49 |_.#defin|e SYS_SI|
|00002070| 5a 45 20 30 78 66 66 66 | 66 0a 23 65 6c 73 65 0a |ZE 0xfff|f.#else.|
|00002080| 23 64 65 66 69 6e 65 20 | 53 59 53 5f 53 49 5a 45 |#define |SYS_SIZE|
|00002090| 20 44 45 46 5f 53 59 53 | 53 49 5a 45 0a 23 65 6e | DEF_SYS|SIZE.#en|
|000020a0| 64 69 66 0a 0a 23 64 65 | 66 69 6e 65 20 44 45 46 |dif..#de|fine DEF|
|000020b0| 41 55 4c 54 5f 4d 41 4a | 4f 52 5f 52 4f 4f 54 20 |AULT_MAJ|OR_ROOT |
|000020c0| 30 0a 23 64 65 66 69 6e | 65 20 44 45 46 41 55 4c |0.#defin|e DEFAUL|
|000020d0| 54 5f 4d 49 4e 4f 52 5f | 52 4f 4f 54 20 30 0a 0a |T_MINOR_|ROOT 0..|
|000020e0| 2f 2a 20 6d 61 78 20 6e | 72 20 6f 66 20 73 65 63 |/* max n|r of sec|
|000020f0| 74 6f 72 73 20 6f 66 20 | 73 65 74 75 70 3a 20 64 |tors of |setup: d|
|00002100| 6f 6e 27 74 20 63 68 61 | 6e 67 65 20 75 6e 6c 65 |on't cha|nge unle|
|00002110| 73 73 20 79 6f 75 20 61 | 6c 73 6f 20 63 68 61 6e |ss you a|lso chan|
|00002120| 67 65 0a 20 2a 20 62 6f | 6f 74 73 65 63 74 20 65 |ge. * bo|otsect e|
|00002130| 74 63 20 2a 2f 0a 23 64 | 65 66 69 6e 65 20 53 45 |tc */.#d|efine SE|
|00002140| 54 55 50 5f 53 45 43 54 | 53 20 34 0a 0a 23 64 65 |TUP_SECT|S 4..#de|
|00002150| 66 69 6e 65 20 53 54 52 | 49 4e 47 49 46 59 28 78 |fine STR|INGIFY(x|
|00002160| 29 20 23 78 0a 0a 74 79 | 70 65 64 65 66 20 75 6e |) #x..ty|pedef un|
|00002170| 69 6f 6e 20 7b 0a 09 6c | 6f 6e 67 20 6c 3b 0a 09 |ion {..l|ong l;..|
|00002180| 73 68 6f 72 74 20 73 5b | 32 5d 3b 0a 09 63 68 61 |short s[|2];..cha|
|00002190| 72 20 62 5b 34 5d 3b 0a | 7d 20 63 6f 6e 76 3b 0a |r b[4];.|} conv;.|
|000021a0| 0a 6c 6f 6e 67 20 69 6e | 74 65 6c 5f 6c 6f 6e 67 |.long in|tel_long|
|000021b0| 28 6c 6f 6e 67 20 6c 29 | 0a 7b 0a 09 63 6f 6e 76 |(long l)|.{..conv|
|000021c0| 20 74 3b 0a 0a 09 74 2e | 62 5b 30 5d 20 3d 20 6c | t;...t.|b[0] = l|
|000021d0| 20 26 20 30 78 66 66 3b | 20 6c 20 3e 3e 3d 20 38 | & 0xff;| l >>= 8|
|000021e0| 3b 0a 09 74 2e 62 5b 31 | 5d 20 3d 20 6c 20 26 20 |;..t.b[1|] = l & |
|000021f0| 30 78 66 66 3b 20 6c 20 | 3e 3e 3d 20 38 3b 0a 09 |0xff; l |>>= 8;..|
|00002200| 74 2e 62 5b 32 5d 20 3d | 20 6c 20 26 20 30 78 66 |t.b[2] =| l & 0xf|
|00002210| 66 3b 20 6c 20 3e 3e 3d | 20 38 3b 0a 09 74 2e 62 |f; l >>=| 8;..t.b|
|00002220| 5b 33 5d 20 3d 20 6c 20 | 26 20 30 78 66 66 3b 20 |[3] = l |& 0xff; |
|00002230| 6c 20 3e 3e 3d 20 38 3b | 0a 09 72 65 74 75 72 6e |l >>= 8;|..return|
|00002240| 20 74 2e 6c 3b 0a 7d 0a | 0a 73 68 6f 72 74 20 69 | t.l;.}.|.short i|
|00002250| 6e 74 65 6c 5f 73 68 6f | 72 74 28 73 68 6f 72 74 |ntel_sho|rt(short|
|00002260| 20 6c 29 0a 7b 0a 09 63 | 6f 6e 76 20 74 3b 0a 0a | l).{..c|onv t;..|
|00002270| 09 74 2e 62 5b 30 5d 20 | 3d 20 6c 20 26 20 30 78 |.t.b[0] |= l & 0x|
|00002280| 66 66 3b 20 6c 20 3e 3e | 3d 20 38 3b 0a 09 74 2e |ff; l >>|= 8;..t.|
|00002290| 62 5b 31 5d 20 3d 20 6c | 20 26 20 30 78 66 66 3b |b[1] = l| & 0xff;|
|000022a0| 20 6c 20 3e 3e 3d 20 38 | 3b 0a 09 72 65 74 75 72 | l >>= 8|;..retur|
|000022b0| 6e 20 74 2e 73 5b 30 5d | 3b 0a 7d 0a 0a 76 6f 69 |n t.s[0]|;.}..voi|
|000022c0| 64 20 64 69 65 28 63 6f | 6e 73 74 20 63 68 61 72 |d die(co|nst char|
|000022d0| 20 2a 20 73 74 72 29 0a | 7b 0a 09 66 70 72 69 6e | * str).|{..fprin|
|000022e0| 74 66 28 73 74 64 65 72 | 72 2c 22 25 73 5c 6e 22 |tf(stder|r,"%s\n"|
|000022f0| 2c 73 74 72 29 3b 0a 09 | 65 78 69 74 28 31 29 3b |,str);..|exit(1);|
|00002300| 0a 7d 0a 0a 76 6f 69 64 | 20 75 73 61 67 65 28 76 |.}..void| usage(v|
|00002310| 6f 69 64 29 0a 7b 0a 09 | 64 69 65 28 22 55 73 61 |oid).{..|die("Usa|
|00002320| 67 65 3a 20 6d 61 6b 65 | 62 6f 6f 74 73 65 63 74 |ge: make|bootsect|
|00002330| 20 61 73 38 36 2d 69 6d | 61 67 65 20 3e 20 62 6f | as86-im|age > bo|
|00002340| 6f 74 73 65 63 74 22 29 | 3b 0a 7d 0a 0a 69 6e 74 |otsect")|;.}..int|
|00002350| 20 6d 61 69 6e 28 69 6e | 74 20 61 72 67 63 2c 20 | main(in|t argc, |
|00002360| 63 68 61 72 20 2a 2a 20 | 61 72 67 76 29 0a 7b 0a |char ** |argv).{.|
|00002370| 09 69 6e 74 20 69 2c 63 | 2c 69 64 2c 20 73 7a 3b |.int i,c|,id, sz;|
|00002380| 0a 09 75 6e 73 69 67 6e | 65 64 20 6c 6f 6e 67 20 |..unsign|ed long |
|00002390| 73 79 73 5f 73 69 7a 65 | 3b 0a 09 63 68 61 72 20 |sys_size|;..char |
|000023a0| 62 75 66 5b 31 30 32 34 | 5d 3b 0a 23 69 66 6e 64 |buf[1024|];.#ifnd|
|000023b0| 65 66 20 5f 5f 42 46 44 | 5f 5f 0a 09 73 74 72 75 |ef __BFD|__..stru|
|000023c0| 63 74 20 65 78 65 63 20 | 2a 65 78 20 3d 20 28 73 |ct exec |*ex = (s|
|000023d0| 74 72 75 63 74 20 65 78 | 65 63 20 2a 29 62 75 66 |truct ex|ec *)buf|
|000023e0| 3b 0a 23 65 6e 64 69 66 | 0a 09 63 68 61 72 20 6d |;.#endif|..char m|
|000023f0| 61 6a 6f 72 5f 72 6f 6f | 74 2c 20 6d 69 6e 6f 72 |ajor_roo|t, minor|
|00002400| 5f 72 6f 6f 74 3b 0a 09 | 73 74 72 75 63 74 20 73 |_root;..|struct s|
|00002410| 74 61 74 20 73 62 3b 0a | 09 75 6e 73 69 67 6e 65 |tat sb;.|.unsigne|
|00002420| 64 20 63 68 61 72 20 73 | 65 74 75 70 5f 73 65 63 |d char s|etup_sec|
|00002430| 74 6f 72 73 3b 0a 0a 09 | 69 66 20 28 61 72 67 63 |tors;...|if (argc|
|00002440| 20 21 3d 20 32 29 20 75 | 73 61 67 65 28 29 3b 0a | != 2) u|sage();.|
|00002450| 09 66 6f 72 20 28 69 3d | 30 3b 69 3c 73 69 7a 65 |.for (i=|0;i<size|
|00002460| 6f 66 20 62 75 66 3b 20 | 69 2b 2b 29 20 62 75 66 |of buf; |i++) buf|
|00002470| 5b 69 5d 3d 30 3b 0a 09 | 69 66 20 28 28 69 64 3d |[i]=0;..|if ((id=|
|00002480| 6f 70 65 6e 28 61 72 67 | 76 5b 31 5d 2c 4f 5f 52 |open(arg|v[1],O_R|
|00002490| 44 4f 4e 4c 59 2c 30 29 | 29 3c 30 29 0a 09 09 64 |DONLY,0)|)<0)...d|
|000024a0| 69 65 28 22 55 6e 61 62 | 6c 65 20 74 6f 20 6f 70 |ie("Unab|le to op|
|000024b0| 65 6e 20 27 62 6f 6f 74 | 27 22 29 3b 0a 09 69 66 |en 'boot|'");..if|
|000024c0| 20 28 72 65 61 64 28 69 | 64 2c 62 75 66 2c 4d 49 | (read(i|d,buf,MI|
|000024d0| 4e 49 58 5f 48 45 41 44 | 45 52 29 20 21 3d 20 4d |NIX_HEAD|ER) != M|
|000024e0| 49 4e 49 58 5f 48 45 41 | 44 45 52 29 0a 09 09 64 |INIX_HEA|DER)...d|
|000024f0| 69 65 28 22 55 6e 61 62 | 6c 65 20 74 6f 20 72 65 |ie("Unab|le to re|
|00002500| 61 64 20 68 65 61 64 65 | 72 20 6f 66 20 27 62 6f |ad heade|r of 'bo|
|00002510| 6f 74 27 22 29 3b 0a 09 | 69 66 20 28 28 28 6c 6f |ot'");..|if (((lo|
|00002520| 6e 67 20 2a 29 20 62 75 | 66 29 5b 30 5d 21 3d 69 |ng *) bu|f)[0]!=i|
|00002530| 6e 74 65 6c 5f 6c 6f 6e | 67 28 30 78 30 34 31 30 |ntel_lon|g(0x0410|
|00002540| 30 33 30 31 29 29 0a 09 | 09 64 69 65 28 22 4e 6f |0301))..|.die("No|
|00002550| 6e 2d 4d 69 6e 69 78 20 | 68 65 61 64 65 72 20 6f |n-Minix |header o|
|00002560| 66 20 27 62 6f 6f 74 27 | 22 29 3b 0a 09 69 66 20 |f 'boot'|");..if |
|00002570| 28 28 28 6c 6f 6e 67 20 | 2a 29 20 62 75 66 29 5b |(((long |*) buf)[|
|00002580| 31 5d 21 3d 69 6e 74 65 | 6c 5f 6c 6f 6e 67 28 4d |1]!=inte|l_long(M|
|00002590| 49 4e 49 58 5f 48 45 41 | 44 45 52 29 29 0a 09 09 |INIX_HEA|DER))...|
|000025a0| 64 69 65 28 22 4e 6f 6e | 2d 4d 69 6e 69 78 20 68 |die("Non|-Minix h|
|000025b0| 65 61 64 65 72 20 6f 66 | 20 27 62 6f 6f 74 27 22 |eader of| 'boot'"|
|000025c0| 29 3b 0a 09 69 66 20 28 | 28 28 6c 6f 6e 67 20 2a |);..if (|((long *|
|000025d0| 29 20 62 75 66 29 5b 33 | 5d 20 21 3d 20 30 29 0a |) buf)[3|] != 0).|
|000025e0| 09 09 64 69 65 28 22 49 | 6c 6c 65 67 61 6c 20 64 |..die("I|llegal d|
|000025f0| 61 74 61 20 73 65 67 6d | 65 6e 74 20 69 6e 20 27 |ata segm|ent in '|
|00002600| 62 6f 6f 74 27 22 29 3b | 0a 09 69 66 20 28 28 28 |boot'");|..if (((|
|00002610| 6c 6f 6e 67 20 2a 29 20 | 62 75 66 29 5b 34 5d 20 |long *) |buf)[4] |
|00002620| 21 3d 20 30 29 0a 09 09 | 64 69 65 28 22 49 6c 6c |!= 0)...|die("Ill|
|00002630| 65 67 61 6c 20 62 73 73 | 20 69 6e 20 27 62 6f 6f |egal bss| in 'boo|
|00002640| 74 27 22 29 3b 0a 09 69 | 66 20 28 28 28 6c 6f 6e |t'");..i|f (((lon|
|00002650| 67 20 2a 29 20 62 75 66 | 29 5b 35 5d 20 21 3d 20 |g *) buf|)[5] != |
|00002660| 30 29 0a 09 09 64 69 65 | 28 22 4e 6f 6e 2d 4d 69 |0)...die|("Non-Mi|
|00002670| 6e 69 78 20 68 65 61 64 | 65 72 20 6f 66 20 27 62 |nix head|er of 'b|
|00002680| 6f 6f 74 27 22 29 3b 0a | 09 69 66 20 28 28 28 6c |oot'");.|.if (((l|
|00002690| 6f 6e 67 20 2a 29 20 62 | 75 66 29 5b 37 5d 20 21 |ong *) b|uf)[7] !|
|000026a0| 3d 20 30 29 0a 09 09 64 | 69 65 28 22 49 6c 6c 65 |= 0)...d|ie("Ille|
|000026b0| 67 61 6c 20 73 79 6d 62 | 6f 6c 20 74 61 62 6c 65 |gal symb|ol table|
|000026c0| 20 69 6e 20 27 62 6f 6f | 74 27 22 29 3b 0a 09 69 | in 'boo|t'");..i|
|000026d0| 3d 72 65 61 64 28 69 64 | 2c 62 75 66 2c 73 69 7a |=read(id|,buf,siz|
|000026e0| 65 6f 66 20 62 75 66 29 | 3b 0a 09 66 70 72 69 6e |eof buf)|;..fprin|
|000026f0| 74 66 28 73 74 64 65 72 | 72 2c 22 42 6f 6f 74 20 |tf(stder|r,"Boot |
|00002700| 73 65 63 74 6f 72 20 25 | 64 20 62 79 74 65 73 2e |sector %|d bytes.|
|00002710| 5c 6e 22 2c 69 29 3b 0a | 09 69 66 20 28 69 20 21 |\n",i);.|.if (i !|
|00002720| 3d 20 35 31 32 29 0a 09 | 09 64 69 65 28 22 42 6f |= 512)..|.die("Bo|
|00002730| 6f 74 20 62 6c 6f 63 6b | 20 6d 75 73 74 20 62 65 |ot block| must be|
|00002740| 20 65 78 61 63 74 6c 79 | 20 35 31 32 20 62 79 74 | exactly| 512 byt|
|00002750| 65 73 22 29 3b 0a 09 69 | 66 20 28 28 2a 28 75 6e |es");..i|f ((*(un|
|00002760| 73 69 67 6e 65 64 20 73 | 68 6f 72 74 20 2a 29 28 |signed s|hort *)(|
|00002770| 62 75 66 2b 35 31 30 29 | 29 20 21 3d 20 28 75 6e |buf+510)|) != (un|
|00002780| 73 69 67 6e 65 64 20 73 | 68 6f 72 74 29 69 6e 74 |signed s|hort)int|
|00002790| 65 6c 5f 73 68 6f 72 74 | 28 30 78 41 41 35 35 29 |el_short|(0xAA55)|
|000027a0| 29 0a 09 09 64 69 65 28 | 22 42 6f 6f 74 20 62 6c |)...die(|"Boot bl|
|000027b0| 6f 63 6b 20 68 61 73 6e | 27 74 20 67 6f 74 20 62 |ock hasn|'t got b|
|000027c0| 6f 6f 74 20 66 6c 61 67 | 20 28 30 78 41 41 35 35 |oot flag| (0xAA55|
|000027d0| 29 22 29 3b 0a 09 62 75 | 66 5b 35 30 38 5d 20 3d |)");..bu|f[508] =|
|000027e0| 20 28 63 68 61 72 29 20 | 6d 69 6e 6f 72 5f 72 6f | (char) |minor_ro|
|000027f0| 6f 74 3b 0a 09 62 75 66 | 5b 35 30 39 5d 20 3d 20 |ot;..buf|[509] = |
|00002800| 28 63 68 61 72 29 20 6d | 61 6a 6f 72 5f 72 6f 6f |(char) m|ajor_roo|
|00002810| 74 3b 09 0a 09 69 3d 77 | 72 69 74 65 28 31 2c 62 |t;...i=w|rite(1,b|
|00002820| 75 66 2c 35 31 32 29 3b | 0a 09 72 65 74 75 72 6e |uf,512);|..return|
|00002830| 28 30 29 3b 0a 7d 0a 00 | 00 00 00 00 00 00 00 00 |(0);.}..|........|
|00002840| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002850| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002860| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002870| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002880| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002890| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000028f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002900| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002910| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002920| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002930| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002940| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002950| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002960| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002970| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002980| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002990| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029a0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029b0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029c0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029d0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000029f0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002a00| 63 6f 6d 62 6f 6f 74 2d | 31 2e 30 2f 63 6f 6d 62 |comboot-|1.0/comb|
|00002a10| 6f 6f 74 2e 53 00 00 00 | 00 00 00 00 00 00 00 00 |oot.S...|........|
|00002a20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002a30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002a40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002a50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002a60| 00 00 00 00 31 30 30 36 | 34 34 20 00 20 20 20 20 |....1006|44 . |
|00002a70| 20 30 20 00 20 20 20 20 | 20 30 20 00 20 20 20 20 | 0 . | 0 . |
|00002a80| 20 20 32 30 35 33 36 20 | 20 36 31 33 37 37 36 32 | 20536 | 6137762|
|00002a90| 35 37 36 20 20 31 33 32 | 37 33 00 20 30 00 00 00 |576 132|73. 0...|
|00002aa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002ab0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002ac0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002ad0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002ae0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002af0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b00| 00 75 73 74 61 72 20 20 | 00 72 6f 6f 74 00 00 00 |.ustar |.root...|
|00002b10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b20| 00 00 00 00 00 00 00 00 | 00 73 79 73 74 65 6d 00 |........|.system.|
|00002b30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00002c00| 21 0a 21 20 53 59 53 5f | 53 49 5a 45 20 69 73 20 |!.! SYS_|SIZE is |
|00002c10| 74 68 65 20 6e 75 6d 62 | 65 72 20 6f 66 20 63 6c |the numb|er of cl|
|00002c20| 69 63 6b 73 20 28 31 36 | 20 62 79 74 65 73 29 20 |icks (16| bytes) |
|00002c30| 74 6f 20 62 65 20 6c 6f | 61 64 65 64 2e 0a 21 20 |to be lo|aded..! |
|00002c40| 30 78 37 46 30 30 20 69 | 73 20 30 78 37 46 30 30 |0x7F00 i|s 0x7F00|
|00002c50| 30 20 62 79 74 65 73 20 | 3d 20 35 30 38 6b 42 2c |0 bytes |= 508kB,|
|00002c60| 20 6d 6f 72 65 20 74 68 | 61 6e 20 65 6e 6f 75 67 | more th|an enoug|
|00002c70| 68 20 66 6f 72 20 63 75 | 72 72 65 6e 74 0a 21 20 |h for cu|rrent.! |
|00002c80| 76 65 72 73 69 6f 6e 73 | 20 6f 66 20 6c 69 6e 75 |versions| of linu|
|00002c90| 78 20 77 68 69 63 68 20 | 63 6f 6d 70 72 65 73 73 |x which |compress|
|00002ca0| 20 74 68 65 20 6b 65 72 | 6e 65 6c 0a 21 0a 53 59 | the ker|nel.!.SY|
|00002cb0| 53 53 49 5a 45 20 3d 20 | 34 30 39 36 09 21 20 34 |SSIZE = |4096.! 4|
|00002cc0| 30 39 36 20 2a 20 31 36 | 20 62 79 74 65 73 20 3d |096 * 16| bytes =|
|00002cd0| 20 36 34 6b 42 20 6d 61 | 78 69 6d 75 6d 20 73 69 | 64kB ma|ximum si|
|00002ce0| 7a 65 20 6f 66 20 2e 43 | 4f 4d 20 66 69 6c 65 0a |ze of .C|OM file.|
|00002cf0| 09 09 21 20 49 66 20 79 | 6f 75 20 6b 6e 6f 77 20 |..! If y|ou know |
|00002d00| 74 68 65 20 73 69 7a 65 | 20 6f 66 20 74 68 65 20 |the size| of the |
|00002d10| 2e 43 4f 4d 20 66 69 6c | 65 20 74 68 61 74 20 79 |.COM fil|e that y|
|00002d20| 6f 75 20 61 72 65 20 62 | 6f 6f 74 69 6e 67 2c 0a |ou are b|ooting,.|
|00002d30| 09 09 21 20 59 6f 75 20 | 63 61 6e 20 72 65 64 75 |..! You |can redu|
|00002d40| 63 65 20 74 68 69 73 20 | 6e 75 6d 62 65 72 20 74 |ce this |number t|
|00002d50| 6f 20 28 63 6f 6d 5f 66 | 69 6c 65 5f 73 69 7a 65 |o (com_f|ile_size|
|00002d60| 2b 31 35 29 2f 31 36 0a | 21 09 62 6f 6f 74 73 65 |+15)/16.|!.bootse|
|00002d70| 63 74 2e 73 09 09 43 6f | 70 79 72 69 67 68 74 20 |ct.s..Co|pyright |
|00002d80| 28 43 29 20 31 39 39 31 | 2c 20 31 39 39 32 20 4c |(C) 1991|, 1992 L|
|00002d90| 69 6e 75 73 20 54 6f 72 | 76 61 6c 64 73 0a 21 09 |inus Tor|valds.!.|
|00002da0| 6d 6f 64 69 66 69 65 64 | 20 62 79 20 44 72 65 77 |modified| by Drew|
|00002db0| 20 45 63 6b 68 61 72 64 | 74 0a 21 09 6d 6f 64 69 | Eckhard|t.!.modi|
|00002dc0| 66 69 65 64 20 62 79 20 | 42 72 75 63 65 20 45 76 |fied by |Bruce Ev|
|00002dd0| 61 6e 73 20 28 62 64 65 | 29 0a 21 0a 21 20 62 6f |ans (bde|).!.! bo|
|00002de0| 6f 74 73 65 63 74 2e 73 | 20 69 73 20 6c 6f 61 64 |otsect.s| is load|
|00002df0| 65 64 20 61 74 20 30 78 | 37 63 30 30 20 62 79 20 |ed at 0x|7c00 by |
|00002e00| 74 68 65 20 62 69 6f 73 | 2d 73 74 61 72 74 75 70 |the bios|-startup|
|00002e10| 20 72 6f 75 74 69 6e 65 | 73 2c 20 61 6e 64 20 6d | routine|s, and m|
|00002e20| 6f 76 65 73 0a 21 20 69 | 74 73 65 6c 66 20 6f 75 |oves.! i|tself ou|
|00002e30| 74 20 6f 66 20 74 68 65 | 20 77 61 79 20 74 6f 20 |t of the| way to |
|00002e40| 61 64 64 72 65 73 73 20 | 30 78 39 30 30 30 30 2c |address |0x90000,|
|00002e50| 20 61 6e 64 20 6a 75 6d | 70 73 20 74 68 65 72 65 | and jum|ps there|
|00002e60| 2e 0a 21 0a 21 20 62 64 | 65 20 2d 20 73 68 6f 75 |..!.! bd|e - shou|
|00002e70| 6c 64 20 6e 6f 74 20 6a | 75 6d 70 20 62 6c 69 6e |ld not j|ump blin|
|00002e80| 64 6c 79 2c 20 74 68 65 | 72 65 20 6d 61 79 20 62 |dly, the|re may b|
|00002e90| 65 20 73 79 73 74 65 6d | 73 20 77 69 74 68 20 6f |e system|s with o|
|00002ea0| 6e 6c 79 20 35 31 32 4b | 20 6c 6f 77 0a 21 20 6d |nly 512K| low.! m|
|00002eb0| 65 6d 6f 72 79 2e 20 20 | 55 73 65 20 69 6e 74 20 |emory. |Use int |
|00002ec0| 30 78 31 32 20 74 6f 20 | 67 65 74 20 74 68 65 20 |0x12 to |get the |
|00002ed0| 74 6f 70 20 6f 66 20 6d | 65 6d 6f 72 79 2c 20 65 |top of m|emory, e|
|00002ee0| 74 63 2e 0a 21 0a 21 20 | 49 74 20 74 68 65 6e 20 |tc..!.! |It then |
|00002ef0| 6c 6f 61 64 73 20 27 73 | 65 74 75 70 27 20 64 69 |loads 's|etup' di|
|00002f00| 72 65 63 74 6c 79 20 61 | 66 74 65 72 20 69 74 73 |rectly a|fter its|
|00002f10| 65 6c 66 20 28 30 78 39 | 30 32 30 30 29 2c 20 61 |elf (0x9|0200), a|
|00002f20| 6e 64 20 74 68 65 20 73 | 79 73 74 65 6d 0a 21 20 |nd the s|ystem.! |
|00002f30| 61 74 20 30 78 31 30 30 | 30 30 2c 20 75 73 69 6e |at 0x100|00, usin|
|00002f40| 67 20 42 49 4f 53 20 69 | 6e 74 65 72 72 75 70 74 |g BIOS i|nterrupt|
|00002f50| 73 2e 20 0a 21 0a 21 20 | 4e 4f 54 45 21 20 63 75 |s. .!.! |NOTE! cu|
|00002f60| 72 72 65 6e 74 6c 79 20 | 73 79 73 74 65 6d 20 69 |rrently |system i|
|00002f70| 73 20 61 74 20 6d 6f 73 | 74 20 28 38 2a 36 35 35 |s at mos|t (8*655|
|00002f80| 33 36 2d 34 30 39 36 29 | 20 62 79 74 65 73 20 6c |36-4096)| bytes l|
|00002f90| 6f 6e 67 2e 20 54 68 69 | 73 20 73 68 6f 75 6c 64 |ong. Thi|s should|
|00002fa0| 20 0a 21 20 62 65 20 6e | 6f 20 70 72 6f 62 6c 65 | .! be n|o proble|
|00002fb0| 6d 2c 20 65 76 65 6e 20 | 69 6e 20 74 68 65 20 66 |m, even |in the f|
|00002fc0| 75 74 75 72 65 2e 20 49 | 20 77 61 6e 74 20 74 6f |uture. I| want to|
|00002fd0| 20 6b 65 65 70 20 69 74 | 20 73 69 6d 70 6c 65 2e | keep it| simple.|
|00002fe0| 20 54 68 69 73 20 35 30 | 38 20 6b 42 0a 21 20 6b | This 50|8 kB.! k|
|00002ff0| 65 72 6e 65 6c 20 73 69 | 7a 65 20 73 68 6f 75 6c |ernel si|ze shoul|
|00003000| 64 20 62 65 20 65 6e 6f | 75 67 68 2c 20 65 73 70 |d be eno|ugh, esp|
|00003010| 65 63 69 61 6c 6c 79 20 | 61 73 20 74 68 69 73 20 |ecially |as this |
|00003020| 64 6f 65 73 6e 27 74 20 | 63 6f 6e 74 61 69 6e 20 |doesn't |contain |
|00003030| 74 68 65 0a 21 20 62 75 | 66 66 65 72 20 63 61 63 |the.! bu|ffer cac|
|00003040| 68 65 20 61 73 20 69 6e | 20 6d 69 6e 69 78 20 28 |he as in| minix (|
|00003050| 61 6e 64 20 65 73 70 65 | 63 69 61 6c 6c 79 20 6e |and espe|cially n|
|00003060| 6f 77 20 74 68 61 74 20 | 74 68 65 20 6b 65 72 6e |ow that |the kern|
|00003070| 65 6c 20 69 73 20 0a 21 | 20 63 6f 6d 70 72 65 73 |el is .!| compres|
|00003080| 73 65 64 20 3a 2d 29 0a | 21 0a 21 20 54 68 65 20 |sed :-).|!.! The |
|00003090| 6c 6f 61 64 65 72 20 68 | 61 73 20 62 65 65 6e 20 |loader h|as been |
|000030a0| 6d 61 64 65 20 61 73 20 | 73 69 6d 70 6c 65 20 61 |made as |simple a|
|000030b0| 73 20 70 6f 73 73 69 62 | 6c 65 2c 20 61 6e 64 20 |s possib|le, and |
|000030c0| 63 6f 6e 74 69 6e 75 6f | 75 73 0a 21 20 72 65 61 |continuo|us.! rea|
|000030d0| 64 20 65 72 72 6f 72 73 | 20 77 69 6c 6c 20 72 65 |d errors| will re|
|000030e0| 73 75 6c 74 20 69 6e 20 | 61 20 75 6e 62 72 65 61 |sult in |a unbrea|
|000030f0| 6b 61 62 6c 65 20 6c 6f | 6f 70 2e 20 52 65 62 6f |kable lo|op. Rebo|
|00003100| 6f 74 20 62 79 20 68 61 | 6e 64 2e 20 49 74 0a 21 |ot by ha|nd. It.!|
|00003110| 20 6c 6f 61 64 73 20 70 | 72 65 74 74 79 20 66 61 | loads p|retty fa|
|00003120| 73 74 20 62 79 20 67 65 | 74 74 69 6e 67 20 77 68 |st by ge|tting wh|
|00003130| 6f 6c 65 20 74 72 61 63 | 6b 73 20 61 74 20 61 20 |ole trac|ks at a |
|00003140| 74 69 6d 65 20 77 68 65 | 6e 65 76 65 72 20 70 6f |time whe|never po|
|00003150| 73 73 69 62 6c 65 2e 0a | 0a 2e 74 65 78 74 0a 0a |ssible..|..text..|
|00003160| 42 4f 4f 54 53 45 47 20 | 20 20 3d 20 30 78 30 37 |BOOTSEG | = 0x07|
|00003170| 43 30 09 09 09 21 20 6f | 72 69 67 69 6e 61 6c 20 |C0...! o|riginal |
|00003180| 61 64 64 72 65 73 73 20 | 6f 66 20 62 6f 6f 74 2d |address |of boot-|
|00003190| 73 65 63 74 6f 72 0a 0a | 21 20 54 68 65 73 65 20 |sector..|! These |
|000031a0| 6c 6f 63 61 74 69 6f 6e | 73 20 74 61 6b 65 6e 20 |location|s taken |
|000031b0| 66 72 6f 6d 20 3c 6c 69 | 6e 75 78 2f 63 6f 6e 66 |from <li|nux/conf|
|000031c0| 69 67 2e 68 3e 20 69 6e | 20 4c 69 6e 75 78 20 31 |ig.h> in| Linux 1|
|000031d0| 2e 33 2e 39 35 20 6b 65 | 72 6e 65 6c 2e 0a 21 20 |.3.95 ke|rnel..! |
|000031e0| 54 68 65 79 20 61 72 65 | 20 61 72 62 69 74 72 61 |They are| arbitra|
|000031f0| 72 79 20 61 6e 64 20 63 | 61 6e 20 62 65 20 63 68 |ry and c|an be ch|
|00003200| 61 6e 67 65 64 20 74 6f | 20 6f 74 68 65 72 20 6c |anged to| other l|
|00003210| 6f 63 61 74 69 6f 6e 20 | 69 6e 20 61 6e 79 20 75 |ocation |in any u|
|00003220| 6e 75 73 65 64 0a 21 20 | 70 61 72 74 20 6f 66 20 |nused.! |part of |
|00003230| 74 68 65 20 66 69 72 73 | 74 20 36 34 30 6b 42 20 |the firs|t 640kB |
|00003240| 6f 66 20 52 41 4d 2e 0a | 49 4e 49 54 53 45 47 09 |of RAM..|INITSEG.|
|00003250| 20 20 3d 20 30 78 39 30 | 30 30 09 09 09 21 20 77 | = 0x90|00...! w|
|00003260| 65 20 6d 6f 76 65 20 62 | 6f 6f 74 20 68 65 72 65 |e move b|oot here|
|00003270| 20 2d 20 6f 75 74 20 6f | 66 20 74 68 65 20 77 61 | - out o|f the wa|
|00003280| 79 0a 53 59 53 53 45 47 | 09 20 20 3d 20 30 78 31 |y.SYSSEG|. = 0x1|
|00003290| 30 30 30 09 09 09 21 20 | 73 79 73 74 65 6d 20 6c |000...! |system l|
|000032a0| 6f 61 64 65 64 20 61 74 | 20 30 78 31 30 30 30 30 |oaded at| 0x10000|
|000032b0| 20 28 36 35 35 33 36 29 | 2e 0a 0a 21 49 4e 49 54 | (65536)|...!INIT|
|000032c0| 53 45 47 20 20 20 3d 20 | 44 45 46 5f 49 4e 49 54 |SEG = |DEF_INIT|
|000032d0| 53 45 47 09 09 21 20 77 | 65 20 6d 6f 76 65 20 62 |SEG..! w|e move b|
|000032e0| 6f 6f 74 20 68 65 72 65 | 20 2d 20 6f 75 74 20 6f |oot here| - out o|
|000032f0| 66 20 74 68 65 20 77 61 | 79 0a 21 53 59 53 53 45 |f the wa|y.!SYSSE|
|00003300| 47 20 20 20 20 3d 20 44 | 45 46 5f 53 59 53 53 45 |G = D|EF_SYSSE|
|00003310| 47 09 09 09 21 20 73 79 | 73 74 65 6d 20 6c 6f 61 |G...! sy|stem loa|
|00003320| 64 65 64 20 61 74 20 30 | 78 31 30 30 30 30 20 28 |ded at 0|x10000 (|
|00003330| 36 35 35 33 36 29 2e 0a | 0a 21 20 6c 64 38 36 20 |65536)..|.! ld86 |
|00003340| 72 65 71 75 69 72 65 73 | 20 61 6e 20 65 6e 74 72 |requires| an entr|
|00003350| 79 20 73 79 6d 62 6f 6c | 2e 20 54 68 69 73 20 6d |y symbol|. This m|
|00003360| 61 79 20 61 73 20 77 65 | 6c 6c 20 62 65 20 74 68 |ay as we|ll be th|
|00003370| 65 20 75 73 75 61 6c 20 | 6f 6e 65 2e 0a 2e 67 6c |e usual |one...gl|
|00003380| 6f 62 6c 09 5f 6d 61 69 | 6e 0a 5f 6d 61 69 6e 3a |obl._mai|n._main:|
|00003390| 0a 23 69 66 20 30 20 2f | 2a 20 68 6f 6f 6b 20 66 |.#if 0 /|* hook f|
|000033a0| 6f 72 20 64 65 62 75 67 | 67 65 72 2c 20 68 61 72 |or debug|ger, har|
|000033b0| 6d 6c 65 73 73 20 75 6e | 6c 65 73 73 20 42 49 4f |mless un|less BIO|
|000033c0| 53 20 69 73 20 66 75 73 | 73 79 20 28 6f 6c 64 20 |S is fus|sy (old |
|000033d0| 48 50 29 20 2a 2f 0a 09 | 69 6e 74 09 33 0a 23 65 |HP) */..|int.3.#e|
|000033e0| 6e 64 69 66 0a 09 6d 6f | 76 09 61 78 2c 23 42 4f |ndif..mo|v.ax,#BO|
|000033f0| 4f 54 53 45 47 0a 09 6d | 6f 76 09 64 73 2c 61 78 |OTSEG..m|ov.ds,ax|
|00003400| 0a 09 6d 6f 76 09 61 78 | 2c 23 49 4e 49 54 53 45 |..mov.ax|,#INITSE|
|00003410| 47 0a 09 6d 6f 76 09 65 | 73 2c 61 78 0a 09 6d 6f |G..mov.e|s,ax..mo|
|00003420| 76 09 63 78 2c 23 32 35 | 36 0a 09 73 75 62 09 73 |v.cx,#25|6..sub.s|
|00003430| 69 2c 73 69 0a 09 73 75 | 62 09 64 69 2c 64 69 0a |i,si..su|b.di,di.|
|00003440| 09 63 6c 64 0a 09 72 65 | 70 0a 09 6d 6f 76 73 77 |.cld..re|p..movsw|
|00003450| 0a 0a 09 6a 6d 70 69 09 | 67 6f 2c 49 4e 49 54 53 |...jmpi.|go,INITS|
|00003460| 45 47 0a 0a 21 20 61 78 | 20 61 6e 64 20 65 73 20 |EG..! ax| and es |
|00003470| 61 6c 72 65 61 64 79 20 | 63 6f 6e 74 61 69 6e 20 |already |contain |
|00003480| 49 4e 49 54 53 45 47 0a | 0a 67 6f 3a 09 6d 6f 76 |INITSEG.|.go:.mov|
|00003490| 09 64 69 2c 23 30 78 34 | 30 30 30 2d 31 32 09 21 |.di,#0x4|000-12.!|
|000034a0| 20 30 78 34 30 30 30 20 | 69 73 20 61 72 62 69 74 | 0x4000 |is arbit|
|000034b0| 72 61 72 79 20 76 61 6c | 75 65 20 3e 3d 20 6c 65 |rary val|ue >= le|
|000034c0| 6e 67 74 68 20 6f 66 0a | 09 09 09 09 21 20 62 6f |ngth of.|....! bo|
|000034d0| 6f 74 73 65 63 74 20 2b | 20 6c 65 6e 67 74 68 20 |otsect +| length |
|000034e0| 6f 66 20 73 65 74 75 70 | 20 2b 20 72 6f 6f 6d 20 |of setup| + room |
|000034f0| 66 6f 72 20 73 74 61 63 | 6b 0a 09 09 09 09 21 20 |for stac|k.....! |
|00003500| 31 32 20 69 73 20 64 69 | 73 6b 20 70 61 72 6d 20 |12 is di|sk parm |
|00003510| 73 69 7a 65 0a 0a 21 20 | 62 64 65 20 2d 20 63 68 |size..! |bde - ch|
|00003520| 61 6e 67 65 64 20 30 78 | 66 66 30 30 20 74 6f 20 |anged 0x|ff00 to |
|00003530| 30 78 34 30 30 30 20 74 | 6f 20 75 73 65 20 64 65 |0x4000 t|o use de|
|00003540| 62 75 67 67 65 72 20 61 | 74 20 30 78 36 34 30 30 |bugger a|t 0x6400|
|00003550| 20 75 70 20 28 62 64 65 | 29 2e 20 20 57 65 0a 21 | up (bde|). We.!|
|00003560| 20 77 6f 75 6c 64 6e 27 | 74 20 68 61 76 65 20 74 | wouldn'|t have t|
|00003570| 6f 20 77 6f 72 72 79 20 | 61 62 6f 75 74 20 74 68 |o worry |about th|
|00003580| 69 73 20 69 66 20 77 65 | 20 63 68 65 63 6b 65 64 |is if we| checked|
|00003590| 20 74 68 65 20 74 6f 70 | 20 6f 66 20 6d 65 6d 6f | the top| of memo|
|000035a0| 72 79 2e 20 20 41 6c 73 | 6f 0a 21 20 6d 79 20 42 |ry. Als|o.! my B|
|000035b0| 49 4f 53 20 63 61 6e 20 | 62 65 20 63 6f 6e 66 69 |IOS can |be confi|
|000035c0| 67 75 72 65 64 20 74 6f | 20 70 75 74 20 74 68 65 |gured to| put the|
|000035d0| 20 77 69 6e 69 20 64 72 | 69 76 65 20 74 61 62 6c | wini dr|ive tabl|
|000035e0| 65 73 20 69 6e 20 68 69 | 67 68 20 6d 65 6d 6f 72 |es in hi|gh memor|
|000035f0| 79 0a 21 20 69 6e 73 74 | 65 61 64 20 6f 66 20 69 |y.! inst|ead of i|
|00003600| 6e 20 74 68 65 20 76 65 | 63 74 6f 72 20 74 61 62 |n the ve|ctor tab|
|00003610| 6c 65 2e 20 20 54 68 65 | 20 6f 6c 64 20 73 74 61 |le. The| old sta|
|00003620| 63 6b 20 6d 69 67 68 74 | 20 68 61 76 65 20 63 6c |ck might| have cl|
|00003630| 6f 62 62 65 72 65 64 20 | 74 68 65 0a 21 20 64 72 |obbered |the.! dr|
|00003640| 69 76 65 20 74 61 62 6c | 65 2e 0a 0a 09 6d 6f 76 |ive tabl|e....mov|
|00003650| 09 64 73 2c 61 78 0a 09 | 6d 6f 76 09 73 73 2c 61 |.ds,ax..|mov.ss,a|
|00003660| 78 09 09 21 20 70 75 74 | 20 73 74 61 63 6b 20 61 |x..! put| stack a|
|00003670| 74 20 49 4e 49 54 53 45 | 47 3a 30 78 34 30 30 30 |t INITSE|G:0x4000|
|00003680| 2d 31 32 2e 0a 09 6d 6f | 76 09 73 70 2c 64 69 0a |-12...mo|v.sp,di.|
|00003690| 2f 2a 0a 20 2a 09 4d 61 | 6e 79 20 42 49 4f 53 27 |/*. *.Ma|ny BIOS'|
|000036a0| 73 20 64 65 66 61 75 6c | 74 20 64 69 73 6b 20 70 |s defaul|t disk p|
|000036b0| 61 72 61 6d 65 74 65 72 | 20 74 61 62 6c 65 73 20 |arameter| tables |
|000036c0| 77 69 6c 6c 20 6e 6f 74 | 20 0a 20 2a 09 72 65 63 |will not| . *.rec|
|000036d0| 6f 67 6e 69 7a 65 20 6d | 75 6c 74 69 2d 73 65 63 |ognize m|ulti-sec|
|000036e0| 74 6f 72 20 72 65 61 64 | 73 20 62 65 79 6f 6e 64 |tor read|s beyond|
|000036f0| 20 74 68 65 20 6d 61 78 | 69 6d 75 6d 20 73 65 63 | the max|imum sec|
|00003700| 74 6f 72 20 6e 75 6d 62 | 65 72 0a 20 2a 09 73 70 |tor numb|er. *.sp|
|00003710| 65 63 69 66 69 65 64 20 | 69 6e 20 74 68 65 20 64 |ecified |in the d|
|00003720| 65 66 61 75 6c 74 20 64 | 69 73 6b 65 74 74 65 20 |efault d|iskette |
|00003730| 70 61 72 61 6d 65 74 65 | 72 20 74 61 62 6c 65 73 |paramete|r tables|
|00003740| 20 2d 20 74 68 69 73 20 | 6d 61 79 0a 20 2a 09 6d | - this |may. *.m|
|00003750| 65 61 6e 20 37 20 73 65 | 63 74 6f 72 73 20 69 6e |ean 7 se|ctors in|
|00003760| 20 73 6f 6d 65 20 63 61 | 73 65 73 2e 0a 20 2a 0a | some ca|ses.. *.|
|00003770| 20 2a 09 53 69 6e 63 65 | 20 73 69 6e 67 6c 65 20 | *.Since| single |
|00003780| 73 65 63 74 6f 72 20 72 | 65 61 64 73 20 61 72 65 |sector r|eads are|
|00003790| 20 73 6c 6f 77 20 61 6e | 64 20 6f 75 74 20 6f 66 | slow an|d out of|
|000037a0| 20 74 68 65 20 71 75 65 | 73 74 69 6f 6e 2c 0a 20 | the que|stion,. |
|000037b0| 2a 09 77 65 20 6d 75 73 | 74 20 74 61 6b 65 20 63 |*.we mus|t take c|
|000037c0| 61 72 65 20 6f 66 20 74 | 68 69 73 20 62 79 20 63 |are of t|his by c|
|000037d0| 72 65 61 74 69 6e 67 20 | 6e 65 77 20 70 61 72 61 |reating |new para|
|000037e0| 6d 65 74 65 72 20 74 61 | 62 6c 65 73 0a 20 2a 09 |meter ta|bles. *.|
|000037f0| 28 66 6f 72 20 74 68 65 | 20 66 69 72 73 74 20 64 |(for the| first d|
|00003800| 69 73 6b 29 20 69 6e 20 | 52 41 4d 2e 20 20 57 65 |isk) in |RAM. We|
|00003810| 20 77 69 6c 6c 20 73 65 | 74 20 74 68 65 20 6d 61 | will se|t the ma|
|00003820| 78 69 6d 75 6d 20 73 65 | 63 74 6f 72 0a 20 2a 09 |ximum se|ctor. *.|
|00003830| 63 6f 75 6e 74 20 74 6f | 20 33 36 20 2d 20 74 68 |count to| 36 - th|
|00003840| 65 20 6d 6f 73 74 20 77 | 65 20 77 69 6c 6c 20 65 |e most w|e will e|
|00003850| 6e 63 6f 75 6e 74 65 72 | 20 6f 6e 20 61 6e 20 45 |ncounter| on an E|
|00003860| 44 20 32 2e 38 38 2e 20 | 20 0a 20 2a 0a 20 2a 09 |D 2.88. | . *. *.|
|00003870| 48 69 67 68 20 64 6f 65 | 73 6e 27 74 20 68 75 72 |High doe|sn't hur|
|00003880| 74 2e 20 20 4c 6f 77 20 | 64 6f 65 73 2e 0a 20 2a |t. Low |does.. *|
|00003890| 0a 20 2a 09 53 65 67 6d | 65 6e 74 73 20 61 72 65 |. *.Segm|ents are|
|000038a0| 20 61 73 20 66 6f 6c 6c | 6f 77 73 3a 20 64 73 3d | as foll|ows: ds=|
|000038b0| 65 73 3d 73 73 3d 63 73 | 20 2d 20 49 4e 49 54 53 |es=ss=cs| - INITS|
|000038c0| 45 47 2c 0a 20 2a 09 09 | 66 73 20 3d 20 30 2c 20 |EG,. *..|fs = 0, |
|000038d0| 67 73 20 69 73 20 75 6e | 75 73 65 64 2e 0a 20 2a |gs is un|used.. *|
|000038e0| 2f 0a 0a 21 20 63 78 20 | 63 6f 6e 74 61 69 6e 73 |/..! cx |contains|
|000038f0| 20 30 20 66 72 6f 6d 20 | 72 65 70 20 6d 6f 76 73 | 0 from |rep movs|
|00003900| 77 20 61 62 6f 76 65 0a | 0a 09 6d 6f 76 09 66 73 |w above.|..mov.fs|
|00003910| 2c 63 78 0a 09 6d 6f 76 | 09 62 78 2c 23 30 78 37 |,cx..mov|.bx,#0x7|
|00003920| 38 09 09 21 20 66 73 3a | 62 78 20 69 73 20 70 61 |8..! fs:|bx is pa|
|00003930| 72 61 6d 65 74 65 72 20 | 74 61 62 6c 65 20 61 64 |rameter |table ad|
|00003940| 64 72 65 73 73 0a 09 70 | 75 73 68 09 64 73 0a 09 |dress..p|ush.ds..|
|00003950| 73 65 67 20 66 73 0a 09 | 6c 64 73 09 73 69 2c 28 |seg fs..|lds.si,(|
|00003960| 62 78 29 09 09 09 21 20 | 64 73 3a 73 69 20 69 73 |bx)...! |ds:si is|
|00003970| 20 73 6f 75 72 63 65 0a | 0a 09 6d 6f 76 09 63 6c | source.|..mov.cl|
|00003980| 2c 23 36 09 09 09 21 20 | 63 6f 70 79 20 31 32 20 |,#6...! |copy 12 |
|00003990| 62 79 74 65 73 0a 09 63 | 6c 64 0a 09 70 75 73 68 |bytes..c|ld..push|
|000039a0| 09 64 69 0a 0a 09 72 65 | 70 0a 09 6d 6f 76 73 77 |.di...re|p..movsw|
|000039b0| 0a 0a 09 70 6f 70 09 64 | 69 0a 09 70 6f 70 09 64 |...pop.d|i..pop.d|
|000039c0| 73 0a 0a 09 6d 6f 76 62 | 09 34 28 64 69 29 2c 2a |s...movb|.4(di),*|
|000039d0| 33 36 09 09 21 20 70 61 | 74 63 68 20 73 65 63 74 |36..! pa|tch sect|
|000039e0| 6f 72 20 63 6f 75 6e 74 | 0a 0a 09 73 65 67 20 66 |or count|...seg f|
|000039f0| 73 0a 09 6d 6f 76 09 28 | 62 78 29 2c 64 69 0a 09 |s..mov.(|bx),di..|
|00003a00| 73 65 67 20 66 73 0a 09 | 6d 6f 76 09 32 28 62 78 |seg fs..|mov.2(bx|
|00003a10| 29 2c 65 73 0a 0a 21 20 | 4e 6f 74 65 20 74 68 61 |),es..! |Note tha|
|00003a20| 74 20 27 65 73 27 20 69 | 73 20 61 6c 72 65 61 64 |t 'es' i|s alread|
|00003a30| 79 20 73 65 74 20 75 70 | 2e 0a 21 20 41 6c 73 6f |y set up|..! Also|
|00003a40| 20 63 78 20 69 73 20 30 | 20 66 72 6f 6d 20 72 65 | cx is 0| from re|
|00003a50| 70 20 6d 6f 76 73 77 20 | 61 62 6f 76 65 2e 0a 0a |p movsw |above...|
|00003a60| 09 78 6f 72 09 61 68 2c | 61 68 09 09 09 21 20 72 |.xor.ah,|ah...! r|
|00003a70| 65 73 65 74 20 46 44 43 | 20 0a 09 78 6f 72 09 64 |eset FDC| ..xor.d|
|00003a80| 6c 2c 64 6c 0a 09 69 6e | 74 20 09 30 78 31 33 09 |l,dl..in|t .0x13.|
|00003a90| 0a 0a 21 20 47 65 74 20 | 64 69 73 6b 20 64 72 69 |..! Get |disk dri|
|00003aa0| 76 65 20 70 61 72 61 6d | 65 74 65 72 73 2c 20 73 |ve param|eters, s|
|00003ab0| 70 65 63 69 66 69 63 61 | 6c 6c 79 20 6e 72 20 6f |pecifica|lly nr o|
|00003ac0| 66 20 73 65 63 74 6f 72 | 73 2f 74 72 61 63 6b 0a |f sector|s/track.|
|00003ad0| 0a 23 69 66 20 30 0a 0a | 21 20 62 64 65 20 2d 20 |.#if 0..|! bde - |
|00003ae0| 74 68 65 20 50 68 6f 65 | 6e 69 78 20 42 49 4f 53 |the Phoe|nix BIOS|
|00003af0| 20 6d 61 6e 75 61 6c 20 | 73 61 79 73 20 66 75 6e | manual |says fun|
|00003b00| 63 74 69 6f 6e 20 30 78 | 30 38 20 6f 6e 6c 79 20 |ction 0x|08 only |
|00003b10| 77 6f 72 6b 73 20 66 6f | 72 20 66 69 78 65 64 0a |works fo|r fixed.|
|00003b20| 21 20 64 69 73 6b 73 2e | 20 20 49 74 20 64 6f 65 |! disks.| It doe|
|00003b30| 73 6e 27 74 20 77 6f 72 | 6b 20 66 6f 72 20 6f 6e |sn't wor|k for on|
|00003b40| 65 20 6f 66 20 6d 79 20 | 42 49 4f 53 27 73 20 28 |e of my |BIOS's (|
|00003b50| 31 39 38 37 20 41 77 61 | 72 64 29 2e 20 20 49 74 |1987 Awa|rd). It|
|00003b60| 20 77 61 73 0a 21 20 66 | 61 74 61 6c 20 6e 6f 74 | was.! f|atal not|
|00003b70| 20 74 6f 20 63 68 65 63 | 6b 20 74 68 65 20 65 72 | to chec|k the er|
|00003b80| 72 6f 72 20 63 6f 64 65 | 2e 0a 0a 09 78 6f 72 09 |ror code|....xor.|
|00003b90| 64 6c 2c 64 6c 0a 09 6d | 6f 76 09 61 68 2c 23 30 |dl,dl..m|ov.ah,#0|
|00003ba0| 78 30 38 09 09 21 20 41 | 48 3d 38 20 69 73 20 67 |x08..! A|H=8 is g|
|00003bb0| 65 74 20 64 72 69 76 65 | 20 70 61 72 61 6d 65 74 |et drive| paramet|
|00003bc0| 65 72 73 0a 09 69 6e 74 | 09 30 78 31 33 0a 09 78 |ers..int|.0x13..x|
|00003bd0| 6f 72 09 63 68 2c 63 68 | 0a 23 65 6c 73 65 0a 0a |or.ch,ch|.#else..|
|00003be0| 21 20 49 74 20 73 65 65 | 6d 73 20 74 68 61 74 20 |! It see|ms that |
|00003bf0| 74 68 65 72 65 20 69 73 | 20 6e 6f 20 42 49 4f 53 |there is| no BIOS|
|00003c00| 20 63 61 6c 6c 20 74 6f | 20 67 65 74 20 74 68 65 | call to| get the|
|00003c10| 20 6e 75 6d 62 65 72 20 | 6f 66 20 73 65 63 74 6f | number |of secto|
|00003c20| 72 73 2e 20 20 47 75 65 | 73 73 0a 21 20 33 36 20 |rs. Gue|ss.! 36 |
|00003c30| 73 65 63 74 6f 72 73 20 | 69 66 20 73 65 63 74 6f |sectors |if secto|
|00003c40| 72 20 33 36 20 63 61 6e | 20 62 65 20 72 65 61 64 |r 36 can| be read|
|00003c50| 2c 20 31 38 20 73 65 63 | 74 6f 72 73 20 69 66 20 |, 18 sec|tors if |
|00003c60| 73 65 63 74 6f 72 20 31 | 38 20 63 61 6e 20 62 65 |sector 1|8 can be|
|00003c70| 20 72 65 61 64 2c 0a 21 | 20 31 35 20 69 66 20 73 | read,.!| 15 if s|
|00003c80| 65 63 74 6f 72 20 31 35 | 20 63 61 6e 20 62 65 20 |ector 15| can be |
|00003c90| 72 65 61 64 2e 20 20 4f | 74 68 65 72 77 69 73 65 |read. O|therwise|
|00003ca0| 20 67 75 65 73 73 20 39 | 2e 0a 0a 09 6d 6f 76 09 | guess 9|....mov.|
|00003cb0| 73 69 2c 23 64 69 73 6b | 73 69 7a 65 73 09 09 21 |si,#disk|sizes..!|
|00003cc0| 20 74 61 62 6c 65 20 6f | 66 20 73 69 7a 65 73 20 | table o|f sizes |
|00003cd0| 74 6f 20 74 72 79 0a 0a | 70 72 6f 62 65 5f 6c 6f |to try..|probe_lo|
|00003ce0| 6f 70 3a 0a 09 6c 6f 64 | 73 62 0a 09 63 62 77 09 |op:..lod|sb..cbw.|
|00003cf0| 09 09 09 21 20 65 78 74 | 65 6e 64 20 74 6f 20 77 |...! ext|end to w|
|00003d00| 6f 72 64 0a 09 6d 6f 76 | 09 73 65 63 74 6f 72 73 |ord..mov|.sectors|
|00003d10| 2c 20 61 78 0a 09 63 6d | 70 09 73 69 2c 23 64 69 |, ax..cm|p.si,#di|
|00003d20| 73 6b 73 69 7a 65 73 2b | 34 0a 09 6a 61 65 09 67 |sksizes+|4..jae.g|
|00003d30| 6f 74 5f 73 65 63 74 6f | 72 73 09 09 21 20 69 66 |ot_secto|rs..! if|
|00003d40| 20 61 6c 6c 20 65 6c 73 | 65 20 66 61 69 6c 73 2c | all els|e fails,|
|00003d50| 20 74 72 79 20 39 0a 09 | 78 63 68 67 09 61 78 2c | try 9..|xchg.ax,|
|00003d60| 20 63 78 09 09 09 21 20 | 63 78 20 3d 20 74 72 61 | cx...! |cx = tra|
|00003d70| 63 6b 20 61 6e 64 20 73 | 65 63 74 6f 72 0a 09 78 |ck and s|ector..x|
|00003d80| 6f 72 09 64 78 2c 20 64 | 78 09 09 09 21 20 64 72 |or.dx, d|x...! dr|
|00003d90| 69 76 65 20 30 2c 20 68 | 65 61 64 20 30 0a 09 78 |ive 0, h|ead 0..x|
|00003da0| 6f 72 09 62 6c 2c 20 62 | 6c 0a 09 6d 6f 76 09 62 |or.bl, b|l..mov.b|
|00003db0| 68 2c 23 32 09 09 09 21 | 20 61 64 64 72 65 73 73 |h,#2...!| address|
|00003dc0| 20 61 66 74 65 72 20 62 | 6f 6f 74 20 73 65 63 74 | after b|oot sect|
|00003dd0| 6f 72 0a 09 09 09 09 09 | 21 20 20 20 28 35 31 32 |or......|! (512|
|00003de0| 20 62 79 74 65 73 20 66 | 72 6f 6d 20 6f 72 69 67 | bytes f|rom orig|
|00003df0| 69 6e 2c 20 65 73 20 3d | 20 63 73 29 0a 09 6d 6f |in, es =| cs)..mo|
|00003e00| 76 09 61 78 2c 23 30 78 | 30 32 30 31 09 09 21 20 |v.ax,#0x|0201..! |
|00003e10| 73 65 72 76 69 63 65 20 | 32 2c 20 31 20 73 65 63 |service |2, 1 sec|
|00003e20| 74 6f 72 0a 09 69 6e 74 | 09 30 78 31 33 0a 09 6a |tor..int|.0x13..j|
|00003e30| 63 09 70 72 6f 62 65 5f | 6c 6f 6f 70 09 09 21 20 |c.probe_|loop..! |
|00003e40| 74 72 79 20 6e 65 78 74 | 20 76 61 6c 75 65 0a 0a |try next| value..|
|00003e50| 23 65 6e 64 69 66 0a 0a | 67 6f 74 5f 73 65 63 74 |#endif..|got_sect|
|00003e60| 6f 72 73 3a 0a 0a 21 20 | 52 65 73 74 6f 72 65 20 |ors:..! |Restore |
|00003e70| 65 73 0a 0a 09 6d 6f 76 | 09 61 78 2c 23 49 4e 49 |es...mov|.ax,#INI|
|00003e80| 54 53 45 47 0a 09 6d 6f | 76 09 65 73 2c 61 78 0a |TSEG..mo|v.es,ax.|
|00003e90| 0a 21 20 50 72 69 6e 74 | 20 73 6f 6d 65 20 69 6e |.! Print| some in|
|00003ea0| 61 6e 65 20 6d 65 73 73 | 61 67 65 0a 0a 09 6d 6f |ane mess|age...mo|
|00003eb0| 76 09 61 68 2c 23 30 78 | 30 33 09 09 21 20 72 65 |v.ah,#0x|03..! re|
|00003ec0| 61 64 20 63 75 72 73 6f | 72 20 70 6f 73 0a 09 78 |ad curso|r pos..x|
|00003ed0| 6f 72 09 62 68 2c 62 68 | 0a 09 69 6e 74 09 30 78 |or.bh,bh|..int.0x|
|00003ee0| 31 30 0a 09 0a 09 6d 6f | 76 09 63 78 2c 23 33 32 |10....mo|v.cx,#32|
|00003ef0| 0a 09 6d 6f 76 09 62 78 | 2c 23 30 78 30 30 30 37 |..mov.bx|,#0x0007|
|00003f00| 09 09 21 20 70 61 67 65 | 20 30 2c 20 61 74 74 72 |..! page| 0, attr|
|00003f10| 69 62 75 74 65 20 37 20 | 28 6e 6f 72 6d 61 6c 29 |ibute 7 |(normal)|
|00003f20| 0a 09 6d 6f 76 09 62 70 | 2c 23 6d 73 67 31 0a 09 |..mov.bp|,#msg1..|
|00003f30| 6d 6f 76 09 61 78 2c 23 | 30 78 31 33 30 31 09 09 |mov.ax,#|0x1301..|
|00003f40| 21 20 77 72 69 74 65 20 | 73 74 72 69 6e 67 2c 20 |! write |string, |
|00003f50| 6d 6f 76 65 20 63 75 72 | 73 6f 72 0a 09 69 6e 74 |move cur|sor..int|
|00003f60| 09 30 78 31 30 0a 0a 21 | 20 6f 6b 2c 20 77 65 27 |.0x10..!| ok, we'|
|00003f70| 76 65 20 77 72 69 74 74 | 65 6e 20 74 68 65 20 6d |ve writt|en the m|
|00003f80| 65 73 73 61 67 65 2c 20 | 6e 6f 77 0a 21 20 77 65 |essage, |now.! we|
|00003f90| 20 77 61 6e 74 20 74 6f | 20 6c 6f 61 64 20 74 68 | want to| load th|
|00003fa0| 65 20 73 79 73 74 65 6d | 20 28 61 74 20 30 78 31 |e system| (at 0x1|
|00003fb0| 30 30 30 30 29 0a 0a 09 | 6d 6f 76 09 61 78 2c 23 |0000)...|mov.ax,#|
|00003fc0| 53 59 53 53 45 47 0a 09 | 6d 6f 76 09 65 73 2c 61 |SYSSEG..|mov.es,a|
|00003fd0| 78 09 09 21 20 73 65 67 | 6d 65 6e 74 20 6f 66 20 |x..! seg|ment of |
|00003fe0| 30 78 30 31 30 30 30 30 | 0a 09 63 61 6c 6c 09 72 |0x010000|..call.r|
|00003ff0| 65 61 64 5f 69 74 0a 09 | 63 61 6c 6c 09 6b 69 6c |ead_it..|call.kil|
|00004000| 6c 5f 6d 6f 74 6f 72 0a | 09 63 61 6c 6c 09 70 72 |l_motor.|.call.pr|
|00004010| 69 6e 74 5f 6e 6c 0a 0a | 21 20 61 66 74 65 72 20 |int_nl..|! after |
|00004020| 74 68 61 74 20 28 65 76 | 65 72 79 74 68 69 6e 67 |that (ev|erything|
|00004030| 20 6c 6f 61 64 65 64 29 | 2c 20 77 65 20 6a 75 6d | loaded)|, we jum|
|00004040| 70 20 74 6f 0a 21 20 74 | 68 65 20 2e 43 4f 4d 20 |p to.! t|he .COM |
|00004050| 66 69 6c 65 20 6c 6f 61 | 64 65 64 20 64 69 72 65 |file loa|ded dire|
|00004060| 63 74 6c 79 20 61 66 74 | 65 72 20 74 68 65 20 62 |ctly aft|er the b|
|00004070| 6f 6f 74 62 6c 6f 63 6b | 3a 0a 0a 09 6a 6d 70 69 |ootblock|:...jmpi|
|00004080| 09 30 78 31 30 30 2c 53 | 59 53 53 45 47 2d 30 78 |.0x100,S|YSSEG-0x|
|00004090| 31 30 09 21 20 41 20 2e | 63 6f 6d 20 66 69 6c 65 |10.! A .|com file|
|000040a0| 20 65 78 70 65 63 74 73 | 20 74 6f 20 62 65 20 6f | expects| to be o|
|000040b0| 66 66 73 65 74 0a 09 09 | 09 09 09 21 20 62 79 20 |ffset...|...! by |
|000040c0| 30 78 31 30 30 20 66 72 | 6f 6d 20 74 68 65 20 62 |0x100 fr|om the b|
|000040d0| 65 67 69 6e 6e 69 6e 67 | 20 6f 66 0a 09 09 09 09 |eginning| of.....|
|000040e0| 09 21 20 69 74 73 20 63 | 6f 64 65 20 73 65 67 6d |.! its c|ode segm|
|000040f0| 65 6e 74 2e 0a 0a 21 20 | 54 68 69 73 20 72 6f 75 |ent...! |This rou|
|00004100| 74 69 6e 65 20 6c 6f 61 | 64 73 20 74 68 65 20 73 |tine loa|ds the s|
|00004110| 79 73 74 65 6d 20 61 74 | 20 61 64 64 72 65 73 73 |ystem at| address|
|00004120| 20 30 78 31 30 30 30 30 | 2c 20 6d 61 6b 69 6e 67 | 0x10000|, making|
|00004130| 20 73 75 72 65 0a 21 20 | 6e 6f 20 36 34 6b 42 20 | sure.! |no 64kB |
|00004140| 62 6f 75 6e 64 61 72 69 | 65 73 20 61 72 65 20 63 |boundari|es are c|
|00004150| 72 6f 73 73 65 64 2e 20 | 57 65 20 74 72 79 20 74 |rossed. |We try t|
|00004160| 6f 20 6c 6f 61 64 20 69 | 74 20 61 73 20 66 61 73 |o load i|t as fas|
|00004170| 74 20 61 73 0a 21 20 70 | 6f 73 73 69 62 6c 65 2c |t as.! p|ossible,|
|00004180| 20 6c 6f 61 64 69 6e 67 | 20 77 68 6f 6c 65 20 74 | loading| whole t|
|00004190| 72 61 63 6b 73 20 77 68 | 65 6e 65 76 65 72 20 77 |racks wh|enever w|
|000041a0| 65 20 63 61 6e 2e 0a 21 | 0a 21 20 69 6e 3a 09 65 |e can..!|.! in:.e|
|000041b0| 73 20 2d 20 73 74 61 72 | 74 69 6e 67 20 61 64 64 |s - star|ting add|
|000041c0| 72 65 73 73 20 73 65 67 | 6d 65 6e 74 20 28 6e 6f |ress seg|ment (no|
|000041d0| 72 6d 61 6c 6c 79 20 30 | 78 31 30 30 30 29 0a 21 |rmally 0|x1000).!|
|000041e0| 0a 73 72 65 61 64 3a 09 | 2e 77 6f 72 64 20 30 09 |.sread:.|.word 0.|
|000041f0| 09 09 21 20 73 65 63 74 | 6f 72 73 20 72 65 61 64 |..! sect|ors read|
|00004200| 20 6f 66 20 63 75 72 72 | 65 6e 74 20 74 72 61 63 | of curr|ent trac|
|00004210| 6b 0a 68 65 61 64 3a 09 | 2e 77 6f 72 64 20 30 09 |k.head:.|.word 0.|
|00004220| 09 09 21 20 63 75 72 72 | 65 6e 74 20 68 65 61 64 |..! curr|ent head|
|00004230| 0a 74 72 61 63 6b 3a 09 | 2e 77 6f 72 64 20 30 09 |.track:.|.word 0.|
|00004240| 09 09 21 20 63 75 72 72 | 65 6e 74 20 74 72 61 63 |..! curr|ent trac|
|00004250| 6b 0a 0a 72 65 61 64 5f | 69 74 3a 0a 09 6d 6f 76 |k..read_|it:..mov|
|00004260| 09 61 6c 2c 23 31 0a 09 | 6d 6f 76 09 73 72 65 61 |.al,#1..|mov.srea|
|00004270| 64 2c 61 6c 0a 09 6d 6f | 76 20 61 78 2c 65 73 0a |d,al..mo|v ax,es.|
|00004280| 09 74 65 73 74 20 61 78 | 2c 23 30 78 30 66 66 66 |.test ax|,#0x0fff|
|00004290| 0a 64 69 65 3a 09 6a 6e | 65 20 64 69 65 09 09 09 |.die:.jn|e die...|
|000042a0| 21 20 65 73 20 6d 75 73 | 74 20 62 65 20 61 74 20 |! es mus|t be at |
|000042b0| 36 34 6b 42 20 62 6f 75 | 6e 64 61 72 79 0a 09 78 |64kB bou|ndary..x|
|000042c0| 6f 72 20 62 78 2c 62 78 | 09 09 21 20 62 78 20 69 |or bx,bx|..! bx i|
|000042d0| 73 20 73 74 61 72 74 69 | 6e 67 20 61 64 64 72 65 |s starti|ng addre|
|000042e0| 73 73 20 77 69 74 68 69 | 6e 20 73 65 67 6d 65 6e |ss withi|n segmen|
|000042f0| 74 0a 72 70 5f 72 65 61 | 64 3a 0a 23 69 66 64 65 |t.rp_rea|d:.#ifde|
|00004300| 66 20 5f 5f 42 49 47 5f | 4b 45 52 4e 45 4c 5f 5f |f __BIG_|KERNEL__|
|00004310| 0a 23 64 65 66 69 6e 65 | 20 43 41 4c 4c 5f 48 49 |.#define| CALL_HI|
|00004320| 47 48 4c 4f 41 44 5f 4b | 4c 55 44 47 45 20 2e 77 |GHLOAD_K|LUDGE .w|
|00004330| 6f 72 64 20 30 78 31 65 | 66 66 2c 30 78 32 32 30 |ord 0x1e|ff,0x220|
|00004340| 20 21 20 63 61 6c 6c 20 | 66 61 72 20 2a 20 62 6f | ! call |far * bo|
|00004350| 6f 74 73 65 63 74 5f 6b | 6c 75 64 67 65 0a 09 09 |otsect_k|ludge...|
|00004360| 09 09 21 20 4e 4f 54 45 | 3a 20 61 73 38 36 20 63 |..! NOTE|: as86 c|
|00004370| 61 6e 27 74 20 61 73 73 | 65 6d 62 6c 65 20 74 68 |an't ass|emble th|
|00004380| 69 73 0a 09 43 41 4c 4c | 5f 48 49 47 48 4c 4f 41 |is..CALL|_HIGHLOA|
|00004390| 44 5f 4b 4c 55 44 47 45 | 09 21 20 74 68 69 73 20 |D_KLUDGE|.! this |
|000043a0| 69 73 20 77 69 74 68 69 | 6e 20 73 65 74 75 70 2e |is withi|n setup.|
|000043b0| 53 0a 23 65 6c 73 65 0a | 09 6d 6f 76 20 61 78 2c |S.#else.|.mov ax,|
|000043c0| 65 73 0a 09 73 75 62 20 | 61 78 2c 23 53 59 53 53 |es..sub |ax,#SYSS|
|000043d0| 45 47 0a 23 65 6e 64 69 | 66 0a 09 63 6d 70 20 61 |EG.#endi|f..cmp a|
|000043e0| 78 2c 23 53 59 53 53 49 | 5a 45 09 09 21 20 68 61 |x,#SYSSI|ZE..! ha|
|000043f0| 76 65 20 77 65 20 6c 6f | 61 64 65 64 20 61 6c 6c |ve we lo|aded all|
|00004400| 20 79 65 74 3f 0a 09 6a | 62 65 20 6f 6b 31 5f 72 | yet?..j|be ok1_r|
|00004410| 65 61 64 0a 09 72 65 74 | 0a 6f 6b 31 5f 72 65 61 |ead..ret|.ok1_rea|
|00004420| 64 3a 0a 09 6d 6f 76 20 | 61 78 2c 73 65 63 74 6f |d:..mov |ax,secto|
|00004430| 72 73 0a 09 73 75 62 20 | 61 78 2c 73 72 65 61 64 |rs..sub |ax,sread|
|00004440| 0a 09 6d 6f 76 20 63 78 | 2c 61 78 0a 09 73 68 6c |..mov cx|,ax..shl|
|00004450| 20 63 78 2c 23 39 0a 09 | 61 64 64 20 63 78 2c 62 | cx,#9..|add cx,b|
|00004460| 78 0a 09 6a 6e 63 20 6f | 6b 32 5f 72 65 61 64 0a |x..jnc o|k2_read.|
|00004470| 09 6a 65 20 6f 6b 32 5f | 72 65 61 64 0a 09 78 6f |.je ok2_|read..xo|
|00004480| 72 20 61 78 2c 61 78 0a | 09 73 75 62 20 61 78 2c |r ax,ax.|.sub ax,|
|00004490| 62 78 0a 09 73 68 72 20 | 61 78 2c 23 39 0a 6f 6b |bx..shr |ax,#9.ok|
|000044a0| 32 5f 72 65 61 64 3a 0a | 09 63 61 6c 6c 20 72 65 |2_read:.|.call re|
|000044b0| 61 64 5f 74 72 61 63 6b | 0a 09 6d 6f 76 20 63 78 |ad_track|..mov cx|
|000044c0| 2c 61 78 0a 09 61 64 64 | 20 61 78 2c 73 72 65 61 |,ax..add| ax,srea|
|000044d0| 64 0a 09 63 6d 70 20 61 | 78 2c 73 65 63 74 6f 72 |d..cmp a|x,sector|
|000044e0| 73 0a 09 6a 6e 65 20 6f | 6b 33 5f 72 65 61 64 0a |s..jne o|k3_read.|
|000044f0| 09 6d 6f 76 20 61 78 2c | 23 31 0a 09 73 75 62 20 |.mov ax,|#1..sub |
|00004500| 61 78 2c 68 65 61 64 0a | 09 6a 6e 65 20 6f 6b 34 |ax,head.|.jne ok4|
|00004510| 5f 72 65 61 64 0a 09 69 | 6e 63 20 74 72 61 63 6b |_read..i|nc track|
|00004520| 0a 6f 6b 34 5f 72 65 61 | 64 3a 0a 09 6d 6f 76 20 |.ok4_rea|d:..mov |
|00004530| 68 65 61 64 2c 61 78 0a | 09 78 6f 72 20 61 78 2c |head,ax.|.xor ax,|
|00004540| 61 78 0a 6f 6b 33 5f 72 | 65 61 64 3a 0a 09 6d 6f |ax.ok3_r|ead:..mo|
|00004550| 76 20 73 72 65 61 64 2c | 61 78 0a 09 73 68 6c 20 |v sread,|ax..shl |
|00004560| 63 78 2c 23 39 0a 09 61 | 64 64 20 62 78 2c 63 78 |cx,#9..a|dd bx,cx|
|00004570| 0a 09 6a 6e 63 20 72 70 | 5f 72 65 61 64 0a 09 6d |..jnc rp|_read..m|
|00004580| 6f 76 20 61 78 2c 65 73 | 0a 09 61 64 64 20 61 68 |ov ax,es|..add ah|
|00004590| 2c 23 30 78 31 30 0a 09 | 6d 6f 76 20 65 73 2c 61 |,#0x10..|mov es,a|
|000045a0| 78 0a 09 78 6f 72 20 62 | 78 2c 62 78 0a 09 6a 6d |x..xor b|x,bx..jm|
|000045b0| 70 20 72 70 5f 72 65 61 | 64 0a 0a 72 65 61 64 5f |p rp_rea|d..read_|
|000045c0| 74 72 61 63 6b 3a 0a 09 | 70 75 73 68 61 0a 09 70 |track:..|pusha..p|
|000045d0| 75 73 68 61 09 0a 09 6d | 6f 76 09 61 78 2c 20 23 |usha...m|ov.ax, #|
|000045e0| 30 78 65 32 65 20 09 21 | 20 6c 6f 61 64 69 6e 67 |0xe2e .!| loading|
|000045f0| 2e 2e 2e 20 6d 65 73 73 | 61 67 65 20 32 65 20 3d |... mess|age 2e =|
|00004600| 20 2e 0a 09 6d 6f 76 09 | 62 78 2c 20 23 37 0a 20 | ...mov.|bx, #7. |
|00004610| 09 69 6e 74 09 30 78 31 | 30 0a 09 70 6f 70 61 09 |.int.0x1|0..popa.|
|00004620| 09 0a 0a 09 6d 6f 76 09 | 64 78 2c 74 72 61 63 6b |....mov.|dx,track|
|00004630| 0a 09 6d 6f 76 09 63 78 | 2c 73 72 65 61 64 0a 09 |..mov.cx|,sread..|
|00004640| 69 6e 63 09 63 78 0a 09 | 6d 6f 76 09 63 68 2c 64 |inc.cx..|mov.ch,d|
|00004650| 6c 0a 09 6d 6f 76 09 64 | 78 2c 68 65 61 64 0a 09 |l..mov.d|x,head..|
|00004660| 6d 6f 76 09 64 68 2c 64 | 6c 0a 09 61 6e 64 09 64 |mov.dh,d|l..and.d|
|00004670| 78 2c 23 30 78 30 31 30 | 30 0a 09 6d 6f 76 09 61 |x,#0x010|0..mov.a|
|00004680| 68 2c 23 32 0a 09 0a 09 | 70 75 73 68 09 64 78 09 |h,#2....|push.dx.|
|00004690| 09 09 09 21 20 73 61 76 | 65 20 66 6f 72 20 65 72 |...! sav|e for er|
|000046a0| 72 6f 72 20 64 75 6d 70 | 0a 09 70 75 73 68 09 63 |ror dump|..push.c|
|000046b0| 78 0a 09 70 75 73 68 09 | 62 78 0a 09 70 75 73 68 |x..push.|bx..push|
|000046c0| 09 61 78 0a 0a 09 69 6e | 74 09 30 78 31 33 0a 09 |.ax...in|t.0x13..|
|000046d0| 6a 63 09 62 61 64 5f 72 | 74 0a 09 61 64 64 09 73 |jc.bad_r|t..add.s|
|000046e0| 70 2c 20 23 38 0a 09 70 | 6f 70 61 0a 09 72 65 74 |p, #8..p|opa..ret|
|000046f0| 0a 0a 62 61 64 5f 72 74 | 3a 09 70 75 73 68 09 61 |..bad_rt|:.push.a|
|00004700| 78 09 09 09 09 21 20 73 | 61 76 65 20 65 72 72 6f |x....! s|ave erro|
|00004710| 72 20 63 6f 64 65 0a 09 | 63 61 6c 6c 09 70 72 69 |r code..|call.pri|
|00004720| 6e 74 5f 61 6c 6c 09 09 | 09 21 20 61 68 20 3d 20 |nt_all..|.! ah = |
|00004730| 65 72 72 6f 72 2c 20 61 | 6c 20 3d 20 72 65 61 64 |error, a|l = read|
|00004740| 0a 09 0a 09 0a 09 78 6f | 72 20 61 68 2c 61 68 0a |......xo|r ah,ah.|
|00004750| 09 78 6f 72 20 64 6c 2c | 64 6c 0a 09 69 6e 74 20 |.xor dl,|dl..int |
|00004760| 30 78 31 33 0a 09 0a 0a | 09 61 64 64 09 73 70 2c |0x13....|.add.sp,|
|00004770| 20 23 31 30 0a 09 70 6f | 70 61 09 0a 09 6a 6d 70 | #10..po|pa...jmp|
|00004780| 20 72 65 61 64 5f 74 72 | 61 63 6b 0a 0a 2f 2a 0a | read_tr|ack../*.|
|00004790| 20 2a 09 70 72 69 6e 74 | 5f 61 6c 6c 20 69 73 20 | *.print|_all is |
|000047a0| 66 6f 72 20 64 65 62 75 | 67 67 69 6e 67 20 70 75 |for debu|gging pu|
|000047b0| 72 70 6f 73 65 73 2e 20 | 20 0a 20 2a 09 49 74 20 |rposes. | . *.It |
|000047c0| 77 69 6c 6c 20 70 72 69 | 6e 74 20 6f 75 74 20 61 |will pri|nt out a|
|000047d0| 6c 6c 20 6f 66 20 74 68 | 65 20 72 65 67 69 73 74 |ll of th|e regist|
|000047e0| 65 72 73 2e 20 20 54 68 | 65 20 61 73 73 75 6d 70 |ers. Th|e assump|
|000047f0| 74 69 6f 6e 20 69 73 20 | 74 68 61 74 20 74 68 69 |tion is |that thi|
|00004800| 73 20 69 73 0a 20 2a 09 | 63 61 6c 6c 65 64 20 66 |s is. *.|called f|
|00004810| 72 6f 6d 20 61 20 72 6f | 75 74 69 6e 65 2c 20 77 |rom a ro|utine, w|
|00004820| 69 74 68 20 61 20 73 74 | 61 63 6b 20 66 72 61 6d |ith a st|ack fram|
|00004830| 65 20 6c 69 6b 65 0a 20 | 2a 09 64 78 20 0a 20 2a |e like. |*.dx . *|
|00004840| 09 63 78 0a 20 2a 09 62 | 78 0a 20 2a 09 61 78 0a |.cx. *.b|x. *.ax.|
|00004850| 20 2a 09 65 72 72 6f 72 | 0a 20 2a 09 72 65 74 20 | *.error|. *.ret |
|00004860| 3c 2d 20 73 70 0a 20 2a | 0a 2a 2f 0a 20 0a 70 72 |<- sp. *|.*/. .pr|
|00004870| 69 6e 74 5f 61 6c 6c 3a | 0a 09 6d 6f 76 09 63 78 |int_all:|..mov.cx|
|00004880| 2c 20 23 35 09 09 21 20 | 65 72 72 6f 72 20 63 6f |, #5..! |error co|
|00004890| 64 65 20 2b 20 34 20 72 | 65 67 69 73 74 65 72 73 |de + 4 r|egisters|
|000048a0| 0a 09 6d 6f 76 09 62 70 | 2c 20 73 70 09 0a 0a 70 |..mov.bp|, sp...p|
|000048b0| 72 69 6e 74 5f 6c 6f 6f | 70 3a 0a 09 70 75 73 68 |rint_loo|p:..push|
|000048c0| 09 63 78 09 09 21 20 73 | 61 76 65 20 63 6f 75 6e |.cx..! s|ave coun|
|000048d0| 74 20 6c 65 66 74 0a 09 | 63 61 6c 6c 09 70 72 69 |t left..|call.pri|
|000048e0| 6e 74 5f 6e 6c 09 21 20 | 6e 6c 20 66 6f 72 20 72 |nt_nl.! |nl for r|
|000048f0| 65 61 64 61 62 69 6c 69 | 74 79 0a 0a 09 63 6d 70 |eadabili|ty...cmp|
|00004900| 09 63 6c 2c 20 23 35 0a | 09 6a 61 65 09 6e 6f 5f |.cl, #5.|.jae.no_|
|00004910| 72 65 67 09 09 21 20 73 | 65 65 20 69 66 20 72 65 |reg..! s|ee if re|
|00004920| 67 69 73 74 65 72 20 6e | 61 6d 65 20 69 73 20 6e |gister n|ame is n|
|00004930| 65 65 64 65 64 0a 09 0a | 09 6d 6f 76 09 61 78 2c |eeded...|.mov.ax,|
|00004940| 20 23 30 78 65 30 35 20 | 2b 20 27 41 20 2d 20 31 | #0xe05 |+ 'A - 1|
|00004950| 0a 09 73 75 62 09 61 6c | 2c 20 63 6c 0a 09 69 6e |..sub.al|, cl..in|
|00004960| 74 09 30 78 31 30 0a 0a | 09 6d 6f 76 09 61 6c 2c |t.0x10..|.mov.al,|
|00004970| 20 23 27 58 0a 09 69 6e | 74 09 30 78 31 30 0a 0a | #'X..in|t.0x10..|
|00004980| 09 6d 6f 76 09 61 6c 2c | 20 23 27 3a 0a 09 69 6e |.mov.al,| #':..in|
|00004990| 74 09 30 78 31 30 0a 0a | 6e 6f 5f 72 65 67 3a 0a |t.0x10..|no_reg:.|
|000049a0| 09 61 64 64 09 62 70 2c | 20 23 32 09 09 21 20 6e |.add.bp,| #2..! n|
|000049b0| 65 78 74 20 72 65 67 69 | 73 74 65 72 0a 09 63 61 |ext regi|ster..ca|
|000049c0| 6c 6c 09 70 72 69 6e 74 | 5f 68 65 78 09 21 20 70 |ll.print|_hex.! p|
|000049d0| 72 69 6e 74 20 69 74 0a | 09 70 6f 70 09 63 78 0a |rint it.|.pop.cx.|
|000049e0| 09 6c 6f 6f 70 09 70 72 | 69 6e 74 5f 6c 6f 6f 70 |.loop.pr|int_loop|
|000049f0| 0a 09 72 65 74 0a 0a 70 | 72 69 6e 74 5f 6e 6c 3a |..ret..p|rint_nl:|
|00004a00| 0a 09 6d 6f 76 09 61 78 | 2c 20 23 30 78 65 30 64 |..mov.ax|, #0xe0d|
|00004a10| 09 21 20 43 52 0a 09 69 | 6e 74 09 30 78 31 30 0a |.! CR..i|nt.0x10.|
|00004a20| 09 6d 6f 76 09 61 6c 2c | 20 23 30 78 61 09 21 20 |.mov.al,| #0xa.! |
|00004a30| 4c 46 0a 09 69 6e 74 20 | 09 30 78 31 30 0a 09 72 |LF..int |.0x10..r|
|00004a40| 65 74 0a 0a 2f 2a 0a 20 | 2a 09 70 72 69 6e 74 5f |et../*. |*.print_|
|00004a50| 68 65 78 20 69 73 20 66 | 6f 72 20 64 65 62 75 67 |hex is f|or debug|
|00004a60| 67 69 6e 67 20 70 75 72 | 70 6f 73 65 73 2c 20 61 |ging pur|poses, a|
|00004a70| 6e 64 20 70 72 69 6e 74 | 73 20 74 68 65 20 77 6f |nd print|s the wo|
|00004a80| 72 64 0a 20 2a 09 70 6f | 69 6e 74 65 64 20 74 6f |rd. *.po|inted to|
|00004a90| 20 62 79 20 73 73 3a 62 | 70 20 69 6e 20 68 65 78 | by ss:b|p in hex|
|00004aa0| 61 64 65 63 69 6d 61 6c | 2e 0a 2a 2f 0a 0a 70 72 |adecimal|..*/..pr|
|00004ab0| 69 6e 74 5f 68 65 78 3a | 0a 09 6d 6f 76 09 63 78 |int_hex:|..mov.cx|
|00004ac0| 2c 20 23 34 09 09 21 20 | 34 20 68 65 78 20 64 69 |, #4..! |4 hex di|
|00004ad0| 67 69 74 73 0a 09 6d 6f | 76 09 64 78 2c 20 28 62 |gits..mo|v.dx, (b|
|00004ae0| 70 29 09 21 20 6c 6f 61 | 64 20 77 6f 72 64 20 69 |p).! loa|d word i|
|00004af0| 6e 74 6f 20 64 78 0a 70 | 72 69 6e 74 5f 64 69 67 |nto dx.p|rint_dig|
|00004b00| 69 74 3a 0a 09 72 6f 6c | 09 64 78 2c 20 23 34 09 |it:..rol|.dx, #4.|
|00004b10| 09 21 20 72 6f 74 61 74 | 65 20 73 6f 20 74 68 61 |.! rotat|e so tha|
|00004b20| 74 20 6c 6f 77 65 73 74 | 20 34 20 62 69 74 73 20 |t lowest| 4 bits |
|00004b30| 61 72 65 20 75 73 65 64 | 0a 09 6d 6f 76 09 61 78 |are used|..mov.ax|
|00004b40| 2c 20 23 30 78 65 30 66 | 09 21 20 61 68 20 3d 20 |, #0xe0f|.! ah = |
|00004b50| 72 65 71 75 65 73 74 2c | 20 61 6c 20 3d 20 6d 61 |request,| al = ma|
|00004b60| 73 6b 20 66 6f 72 20 6e | 79 62 62 6c 65 0a 09 61 |sk for n|ybble..a|
|00004b70| 6e 64 09 61 6c 2c 20 64 | 6c 0a 09 61 64 64 09 61 |nd.al, d|l..add.a|
|00004b80| 6c 2c 20 23 30 78 39 30 | 09 21 20 63 6f 6e 76 65 |l, #0x90|.! conve|
|00004b90| 72 74 20 61 6c 20 74 6f | 20 61 73 63 69 69 20 68 |rt al to| ascii h|
|00004ba0| 65 78 20 28 66 6f 75 72 | 20 69 6e 73 74 72 75 63 |ex (four| instruc|
|00004bb0| 74 69 6f 6e 73 29 0a 09 | 64 61 61 0a 09 61 64 63 |tions)..|daa..adc|
|00004bc0| 09 61 6c 2c 20 23 30 78 | 34 30 0a 09 64 61 61 0a |.al, #0x|40..daa.|
|00004bd0| 09 69 6e 74 09 30 78 31 | 30 0a 09 6c 6f 6f 70 09 |.int.0x1|0..loop.|
|00004be0| 70 72 69 6e 74 5f 64 69 | 67 69 74 0a 09 72 65 74 |print_di|git..ret|
|00004bf0| 0a 0a 0a 2f 2a 0a 20 2a | 20 54 68 69 73 20 70 72 |.../*. *| This pr|
|00004c00| 6f 63 65 64 75 72 65 20 | 74 75 72 6e 73 20 6f 66 |ocedure |turns of|
|00004c10| 66 20 74 68 65 20 66 6c | 6f 70 70 79 20 64 72 69 |f the fl|oppy dri|
|00004c20| 76 65 20 6d 6f 74 6f 72 | 2c 20 73 6f 0a 20 2a 20 |ve motor|, so. * |
|00004c30| 74 68 61 74 20 77 65 20 | 65 6e 74 65 72 20 74 68 |that we |enter th|
|00004c40| 65 20 6b 65 72 6e 65 6c | 20 69 6e 20 61 20 6b 6e |e kernel| in a kn|
|00004c50| 6f 77 6e 20 73 74 61 74 | 65 2c 20 61 6e 64 0a 20 |own stat|e, and. |
|00004c60| 2a 20 64 6f 6e 27 74 20 | 68 61 76 65 20 74 6f 20 |* don't |have to |
|00004c70| 77 6f 72 72 79 20 61 62 | 6f 75 74 20 69 74 20 6c |worry ab|out it l|
|00004c80| 61 74 65 72 2e 0a 20 2a | 2f 0a 6b 69 6c 6c 5f 6d |ater.. *|/.kill_m|
|00004c90| 6f 74 6f 72 3a 0a 09 70 | 75 73 68 20 64 78 0a 09 |otor:..p|ush dx..|
|00004ca0| 6d 6f 76 20 64 78 2c 23 | 30 78 33 66 32 0a 09 78 |mov dx,#|0x3f2..x|
|00004cb0| 6f 72 20 61 6c 2c 20 61 | 6c 0a 09 6f 75 74 62 0a |or al, a|l..outb.|
|00004cc0| 09 70 6f 70 20 64 78 0a | 09 72 65 74 0a 0a 73 65 |.pop dx.|.ret..se|
|00004cd0| 63 74 6f 72 73 3a 0a 09 | 2e 77 6f 72 64 20 30 0a |ctors:..|.word 0.|
|00004ce0| 0a 64 69 73 6b 73 69 7a | 65 73 3a 0a 09 2e 62 79 |.disksiz|es:...by|
|00004cf0| 74 65 20 33 36 2c 31 38 | 2c 31 35 2c 39 0a 0a 6d |te 36,18|,15,9..m|
|00004d00| 73 67 31 3a 0a 09 2e 62 | 79 74 65 20 31 33 2c 31 |sg1:...b|yte 13,1|
|00004d10| 30 0a 09 2e 61 73 63 69 | 69 20 22 4c 6f 61 64 69 |0...asci|i "Loadi|
|00004d20| 6e 67 20 2e 43 4f 4d 20 | 69 6d 61 67 65 20 66 72 |ng .COM |image fr|
|00004d30| 6f 6d 20 66 6c 6f 70 70 | 79 22 0a 0a 2e 6f 72 67 |om flopp|y"...org|
|00004d40| 20 35 31 30 0a 62 6f 6f | 74 5f 66 6c 61 67 3a 0a | 510.boo|t_flag:.|
|00004d50| 09 2e 77 6f 72 64 20 30 | 78 41 41 35 35 0a 00 00 |..word 0|xAA55...|
|00004d60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004d70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004d80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004d90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004da0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004db0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004dc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004dd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004de0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004df0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004e00| 63 6f 6d 62 6f 6f 74 2d | 31 2e 30 2f 43 4f 50 59 |comboot-|1.0/COPY|
|00004e10| 49 4e 47 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |ING.....|........|
|00004e20| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004e30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004e40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004e50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004e60| 00 00 00 00 31 30 30 36 | 34 34 20 00 20 20 20 20 |....1006|44 . |
|00004e70| 20 30 20 00 20 20 20 20 | 20 30 20 00 20 20 20 20 | 0 . | 0 . |
|00004e80| 20 20 34 33 30 37 36 20 | 20 36 31 33 37 37 34 37 | 43076 | 6137747|
|00004e90| 32 35 30 20 20 31 32 35 | 33 34 00 20 30 00 00 00 |250 125|34. 0...|
|00004ea0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004eb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004ec0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004ed0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004ee0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004ef0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f00| 00 75 73 74 61 72 20 20 | 00 72 6f 6f 74 00 00 00 |.ustar |.root...|
|00004f10| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f20| 00 00 00 00 00 00 00 00 | 00 73 79 73 74 65 6d 00 |........|.system.|
|00004f30| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f40| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f50| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f60| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f70| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004f90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004fa0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004fb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004fc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004fd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004fe0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00004ff0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00005000| 09 09 20 20 20 20 47 4e | 55 20 47 45 4e 45 52 41 |.. GN|U GENERA|
|00005010| 4c 20 50 55 42 4c 49 43 | 20 4c 49 43 45 4e 53 45 |L PUBLIC| LICENSE|
|00005020| 0a 09 09 20 20 20 20 20 | 20 20 56 65 72 73 69 6f |... | Versio|
|00005030| 6e 20 32 2c 20 4a 75 6e | 65 20 31 39 39 31 0a 0a |n 2, Jun|e 1991..|
|00005040| 20 43 6f 70 79 72 69 67 | 68 74 20 28 43 29 20 31 | Copyrig|ht (C) 1|
|00005050| 39 38 39 2c 20 31 39 39 | 31 20 46 72 65 65 20 53 |989, 199|1 Free S|
|00005060| 6f 66 74 77 61 72 65 20 | 46 6f 75 6e 64 61 74 69 |oftware |Foundati|
|00005070| 6f 6e 2c 20 49 6e 63 2e | 0a 20 20 20 20 20 20 20 |on, Inc.|. |
|00005080| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|00005090| 20 20 20 36 37 35 20 4d | 61 73 73 20 41 76 65 2c | 675 M|ass Ave,|
|000050a0| 20 43 61 6d 62 72 69 64 | 67 65 2c 20 4d 41 20 30 | Cambrid|ge, MA 0|
|000050b0| 32 31 33 39 2c 20 55 53 | 41 0a 20 45 76 65 72 79 |2139, US|A. Every|
|000050c0| 6f 6e 65 20 69 73 20 70 | 65 72 6d 69 74 74 65 64 |one is p|ermitted|
|000050d0| 20 74 6f 20 63 6f 70 79 | 20 61 6e 64 20 64 69 73 | to copy| and dis|
|000050e0| 74 72 69 62 75 74 65 20 | 76 65 72 62 61 74 69 6d |tribute |verbatim|
|000050f0| 20 63 6f 70 69 65 73 0a | 20 6f 66 20 74 68 69 73 | copies.| of this|
|00005100| 20 6c 69 63 65 6e 73 65 | 20 64 6f 63 75 6d 65 6e | license| documen|
|00005110| 74 2c 20 62 75 74 20 63 | 68 61 6e 67 69 6e 67 20 |t, but c|hanging |
|00005120| 69 74 20 69 73 20 6e 6f | 74 20 61 6c 6c 6f 77 65 |it is no|t allowe|
|00005130| 64 2e 0a 0a 09 09 09 20 | 20 20 20 50 72 65 61 6d |d...... | Pream|
|00005140| 62 6c 65 0a 0a 20 20 54 | 68 65 20 6c 69 63 65 6e |ble.. T|he licen|
|00005150| 73 65 73 20 66 6f 72 20 | 6d 6f 73 74 20 73 6f 66 |ses for |most sof|
|00005160| 74 77 61 72 65 20 61 72 | 65 20 64 65 73 69 67 6e |tware ar|e design|
|00005170| 65 64 20 74 6f 20 74 61 | 6b 65 20 61 77 61 79 20 |ed to ta|ke away |
|00005180| 79 6f 75 72 0a 66 72 65 | 65 64 6f 6d 20 74 6f 20 |your.fre|edom to |
|00005190| 73 68 61 72 65 20 61 6e | 64 20 63 68 61 6e 67 65 |share an|d change|
|000051a0| 20 69 74 2e 20 20 42 79 | 20 63 6f 6e 74 72 61 73 | it. By| contras|
|000051b0| 74 2c 20 74 68 65 20 47 | 4e 55 20 47 65 6e 65 72 |t, the G|NU Gener|
|000051c0| 61 6c 20 50 75 62 6c 69 | 63 0a 4c 69 63 65 6e 73 |al Publi|c.Licens|
|000051d0| 65 20 69 73 20 69 6e 74 | 65 6e 64 65 64 20 74 6f |e is int|ended to|
|000051e0| 20 67 75 61 72 61 6e 74 | 65 65 20 79 6f 75 72 20 | guarant|ee your |
|000051f0| 66 72 65 65 64 6f 6d 20 | 74 6f 20 73 68 61 72 65 |freedom |to share|
|00005200| 20 61 6e 64 20 63 68 61 | 6e 67 65 20 66 72 65 65 | and cha|nge free|
|00005210| 0a 73 6f 66 74 77 61 72 | 65 2d 2d 74 6f 20 6d 61 |.softwar|e--to ma|
|00005220| 6b 65 20 73 75 72 65 20 | 74 68 65 20 73 6f 66 74 |ke sure |the soft|
|00005230| 77 61 72 65 20 69 73 20 | 66 72 65 65 20 66 6f 72 |ware is |free for|
|00005240| 20 61 6c 6c 20 69 74 73 | 20 75 73 65 72 73 2e 20 | all its| users. |
|00005250| 20 54 68 69 73 0a 47 65 | 6e 65 72 61 6c 20 50 75 | This.Ge|neral Pu|
|00005260| 62 6c 69 63 20 4c 69 63 | 65 6e 73 65 20 61 70 70 |blic Lic|ense app|
|00005270| 6c 69 65 73 20 74 6f 20 | 6d 6f 73 74 20 6f 66 20 |lies to |most of |
|00005280| 74 68 65 20 46 72 65 65 | 20 53 6f 66 74 77 61 72 |the Free| Softwar|
|00005290| 65 0a 46 6f 75 6e 64 61 | 74 69 6f 6e 27 73 20 73 |e.Founda|tion's s|
|000052a0| 6f 66 74 77 61 72 65 20 | 61 6e 64 20 74 6f 20 61 |oftware |and to a|
|000052b0| 6e 79 20 6f 74 68 65 72 | 20 70 72 6f 67 72 61 6d |ny other| program|
|000052c0| 20 77 68 6f 73 65 20 61 | 75 74 68 6f 72 73 20 63 | whose a|uthors c|
|000052d0| 6f 6d 6d 69 74 20 74 6f | 0a 75 73 69 6e 67 20 69 |ommit to|.using i|
|000052e0| 74 2e 20 20 28 53 6f 6d | 65 20 6f 74 68 65 72 20 |t. (Som|e other |
|000052f0| 46 72 65 65 20 53 6f 66 | 74 77 61 72 65 20 46 6f |Free Sof|tware Fo|
|00005300| 75 6e 64 61 74 69 6f 6e | 20 73 6f 66 74 77 61 72 |undation| softwar|
|00005310| 65 20 69 73 20 63 6f 76 | 65 72 65 64 20 62 79 0a |e is cov|ered by.|
|00005320| 74 68 65 20 47 4e 55 20 | 4c 69 62 72 61 72 79 20 |the GNU |Library |
|00005330| 47 65 6e 65 72 61 6c 20 | 50 75 62 6c 69 63 20 4c |General |Public L|
|00005340| 69 63 65 6e 73 65 20 69 | 6e 73 74 65 61 64 2e 29 |icense i|nstead.)|
|00005350| 20 20 59 6f 75 20 63 61 | 6e 20 61 70 70 6c 79 20 | You ca|n apply |
|00005360| 69 74 20 74 6f 0a 79 6f | 75 72 20 70 72 6f 67 72 |it to.yo|ur progr|
|00005370| 61 6d 73 2c 20 74 6f 6f | 2e 0a 0a 20 20 57 68 65 |ams, too|... Whe|
|00005380| 6e 20 77 65 20 73 70 65 | 61 6b 20 6f 66 20 66 72 |n we spe|ak of fr|
|00005390| 65 65 20 73 6f 66 74 77 | 61 72 65 2c 20 77 65 20 |ee softw|are, we |
|000053a0| 61 72 65 20 72 65 66 65 | 72 72 69 6e 67 20 74 6f |are refe|rring to|
|000053b0| 20 66 72 65 65 64 6f 6d | 2c 20 6e 6f 74 0a 70 72 | freedom|, not.pr|
|000053c0| 69 63 65 2e 20 20 4f 75 | 72 20 47 65 6e 65 72 61 |ice. Ou|r Genera|
|000053d0| 6c 20 50 75 62 6c 69 63 | 20 4c 69 63 65 6e 73 65 |l Public| License|
|000053e0| 73 20 61 72 65 20 64 65 | 73 69 67 6e 65 64 20 74 |s are de|signed t|
|000053f0| 6f 20 6d 61 6b 65 20 73 | 75 72 65 20 74 68 61 74 |o make s|ure that|
|00005400| 20 79 6f 75 0a 68 61 76 | 65 20 74 68 65 20 66 72 | you.hav|e the fr|
|00005410| 65 65 64 6f 6d 20 74 6f | 20 64 69 73 74 72 69 62 |eedom to| distrib|
|00005420| 75 74 65 20 63 6f 70 69 | 65 73 20 6f 66 20 66 72 |ute copi|es of fr|
|00005430| 65 65 20 73 6f 66 74 77 | 61 72 65 20 28 61 6e 64 |ee softw|are (and|
|00005440| 20 63 68 61 72 67 65 20 | 66 6f 72 0a 74 68 69 73 | charge |for.this|
|00005450| 20 73 65 72 76 69 63 65 | 20 69 66 20 79 6f 75 20 | service| if you |
|00005460| 77 69 73 68 29 2c 20 74 | 68 61 74 20 79 6f 75 20 |wish), t|hat you |
|00005470| 72 65 63 65 69 76 65 20 | 73 6f 75 72 63 65 20 63 |receive |source c|
|00005480| 6f 64 65 20 6f 72 20 63 | 61 6e 20 67 65 74 20 69 |ode or c|an get i|
|00005490| 74 0a 69 66 20 79 6f 75 | 20 77 61 6e 74 20 69 74 |t.if you| want it|
|000054a0| 2c 20 74 68 61 74 20 79 | 6f 75 20 63 61 6e 20 63 |, that y|ou can c|
|000054b0| 68 61 6e 67 65 20 74 68 | 65 20 73 6f 66 74 77 61 |hange th|e softwa|
|000054c0| 72 65 20 6f 72 20 75 73 | 65 20 70 69 65 63 65 73 |re or us|e pieces|
|000054d0| 20 6f 66 20 69 74 0a 69 | 6e 20 6e 65 77 20 66 72 | of it.i|n new fr|
|000054e0| 65 65 20 70 72 6f 67 72 | 61 6d 73 3b 20 61 6e 64 |ee progr|ams; and|
|000054f0| 20 74 68 61 74 20 79 6f | 75 20 6b 6e 6f 77 20 79 | that yo|u know y|
|00005500| 6f 75 20 63 61 6e 20 64 | 6f 20 74 68 65 73 65 20 |ou can d|o these |
|00005510| 74 68 69 6e 67 73 2e 0a | 0a 20 20 54 6f 20 70 72 |things..|. To pr|
|00005520| 6f 74 65 63 74 20 79 6f | 75 72 20 72 69 67 68 74 |otect yo|ur right|
|00005530| 73 2c 20 77 65 20 6e 65 | 65 64 20 74 6f 20 6d 61 |s, we ne|ed to ma|
|00005540| 6b 65 20 72 65 73 74 72 | 69 63 74 69 6f 6e 73 20 |ke restr|ictions |
|00005550| 74 68 61 74 20 66 6f 72 | 62 69 64 0a 61 6e 79 6f |that for|bid.anyo|
|00005560| 6e 65 20 74 6f 20 64 65 | 6e 79 20 79 6f 75 20 74 |ne to de|ny you t|
|00005570| 68 65 73 65 20 72 69 67 | 68 74 73 20 6f 72 20 74 |hese rig|hts or t|
|00005580| 6f 20 61 73 6b 20 79 6f | 75 20 74 6f 20 73 75 72 |o ask yo|u to sur|
|00005590| 72 65 6e 64 65 72 20 74 | 68 65 20 72 69 67 68 74 |render t|he right|
|000055a0| 73 2e 0a 54 68 65 73 65 | 20 72 65 73 74 72 69 63 |s..These| restric|
|000055b0| 74 69 6f 6e 73 20 74 72 | 61 6e 73 6c 61 74 65 20 |tions tr|anslate |
|000055c0| 74 6f 20 63 65 72 74 61 | 69 6e 20 72 65 73 70 6f |to certa|in respo|
|000055d0| 6e 73 69 62 69 6c 69 74 | 69 65 73 20 66 6f 72 20 |nsibilit|ies for |
|000055e0| 79 6f 75 20 69 66 20 79 | 6f 75 0a 64 69 73 74 72 |you if y|ou.distr|
|000055f0| 69 62 75 74 65 20 63 6f | 70 69 65 73 20 6f 66 20 |ibute co|pies of |
|00005600| 74 68 65 20 73 6f 66 74 | 77 61 72 65 2c 20 6f 72 |the soft|ware, or|
|00005610| 20 69 66 20 79 6f 75 20 | 6d 6f 64 69 66 79 20 69 | if you |modify i|
|00005620| 74 2e 0a 0a 20 20 46 6f | 72 20 65 78 61 6d 70 6c |t... Fo|r exampl|
|00005630| 65 2c 20 69 66 20 79 6f | 75 20 64 69 73 74 72 69 |e, if yo|u distri|
|00005640| 62 75 74 65 20 63 6f 70 | 69 65 73 20 6f 66 20 73 |bute cop|ies of s|
|00005650| 75 63 68 20 61 20 70 72 | 6f 67 72 61 6d 2c 20 77 |uch a pr|ogram, w|
|00005660| 68 65 74 68 65 72 0a 67 | 72 61 74 69 73 20 6f 72 |hether.g|ratis or|
|00005670| 20 66 6f 72 20 61 20 66 | 65 65 2c 20 79 6f 75 20 | for a f|ee, you |
|00005680| 6d 75 73 74 20 67 69 76 | 65 20 74 68 65 20 72 65 |must giv|e the re|
|00005690| 63 69 70 69 65 6e 74 73 | 20 61 6c 6c 20 74 68 65 |cipients| all the|
|000056a0| 20 72 69 67 68 74 73 20 | 74 68 61 74 0a 79 6f 75 | rights |that.you|
|000056b0| 20 68 61 76 65 2e 20 20 | 59 6f 75 20 6d 75 73 74 | have. |You must|
|000056c0| 20 6d 61 6b 65 20 73 75 | 72 65 20 74 68 61 74 20 | make su|re that |
|000056d0| 74 68 65 79 2c 20 74 6f | 6f 2c 20 72 65 63 65 69 |they, to|o, recei|
|000056e0| 76 65 20 6f 72 20 63 61 | 6e 20 67 65 74 20 74 68 |ve or ca|n get th|
|000056f0| 65 0a 73 6f 75 72 63 65 | 20 63 6f 64 65 2e 20 20 |e.source| code. |
|00005700| 41 6e 64 20 79 6f 75 20 | 6d 75 73 74 20 73 68 6f |And you |must sho|
|00005710| 77 20 74 68 65 6d 20 74 | 68 65 73 65 20 74 65 72 |w them t|hese ter|
|00005720| 6d 73 20 73 6f 20 74 68 | 65 79 20 6b 6e 6f 77 20 |ms so th|ey know |
|00005730| 74 68 65 69 72 0a 72 69 | 67 68 74 73 2e 0a 0a 20 |their.ri|ghts... |
|00005740| 20 57 65 20 70 72 6f 74 | 65 63 74 20 79 6f 75 72 | We prot|ect your|
|00005750| 20 72 69 67 68 74 73 20 | 77 69 74 68 20 74 77 6f | rights |with two|
|00005760| 20 73 74 65 70 73 3a 20 | 28 31 29 20 63 6f 70 79 | steps: |(1) copy|
|00005770| 72 69 67 68 74 20 74 68 | 65 20 73 6f 66 74 77 61 |right th|e softwa|
|00005780| 72 65 2c 20 61 6e 64 0a | 28 32 29 20 6f 66 66 65 |re, and.|(2) offe|
|00005790| 72 20 79 6f 75 20 74 68 | 69 73 20 6c 69 63 65 6e |r you th|is licen|
|000057a0| 73 65 20 77 68 69 63 68 | 20 67 69 76 65 73 20 79 |se which| gives y|
|000057b0| 6f 75 20 6c 65 67 61 6c | 20 70 65 72 6d 69 73 73 |ou legal| permiss|
|000057c0| 69 6f 6e 20 74 6f 20 63 | 6f 70 79 2c 0a 64 69 73 |ion to c|opy,.dis|
|000057d0| 74 72 69 62 75 74 65 20 | 61 6e 64 2f 6f 72 20 6d |tribute |and/or m|
|000057e0| 6f 64 69 66 79 20 74 68 | 65 20 73 6f 66 74 77 61 |odify th|e softwa|
|000057f0| 72 65 2e 0a 0a 20 20 41 | 6c 73 6f 2c 20 66 6f 72 |re... A|lso, for|
|00005800| 20 65 61 63 68 20 61 75 | 74 68 6f 72 27 73 20 70 | each au|thor's p|
|00005810| 72 6f 74 65 63 74 69 6f | 6e 20 61 6e 64 20 6f 75 |rotectio|n and ou|
|00005820| 72 73 2c 20 77 65 20 77 | 61 6e 74 20 74 6f 20 6d |rs, we w|ant to m|
|00005830| 61 6b 65 20 63 65 72 74 | 61 69 6e 0a 74 68 61 74 |ake cert|ain.that|
|00005840| 20 65 76 65 72 79 6f 6e | 65 20 75 6e 64 65 72 73 | everyon|e unders|
|00005850| 74 61 6e 64 73 20 74 68 | 61 74 20 74 68 65 72 65 |tands th|at there|
|00005860| 20 69 73 20 6e 6f 20 77 | 61 72 72 61 6e 74 79 20 | is no w|arranty |
|00005870| 66 6f 72 20 74 68 69 73 | 20 66 72 65 65 0a 73 6f |for this| free.so|
|00005880| 66 74 77 61 72 65 2e 20 | 20 49 66 20 74 68 65 20 |ftware. | If the |
|00005890| 73 6f 66 74 77 61 72 65 | 20 69 73 20 6d 6f 64 69 |software| is modi|
|000058a0| 66 69 65 64 20 62 79 20 | 73 6f 6d 65 6f 6e 65 20 |fied by |someone |
|000058b0| 65 6c 73 65 20 61 6e 64 | 20 70 61 73 73 65 64 20 |else and| passed |
|000058c0| 6f 6e 2c 20 77 65 0a 77 | 61 6e 74 20 69 74 73 20 |on, we.w|ant its |
|000058d0| 72 65 63 69 70 69 65 6e | 74 73 20 74 6f 20 6b 6e |recipien|ts to kn|
|000058e0| 6f 77 20 74 68 61 74 20 | 77 68 61 74 20 74 68 65 |ow that |what the|
|000058f0| 79 20 68 61 76 65 20 69 | 73 20 6e 6f 74 20 74 68 |y have i|s not th|
|00005900| 65 20 6f 72 69 67 69 6e | 61 6c 2c 20 73 6f 0a 74 |e origin|al, so.t|
|00005910| 68 61 74 20 61 6e 79 20 | 70 72 6f 62 6c 65 6d 73 |hat any |problems|
|00005920| 20 69 6e 74 72 6f 64 75 | 63 65 64 20 62 79 20 6f | introdu|ced by o|
|00005930| 74 68 65 72 73 20 77 69 | 6c 6c 20 6e 6f 74 20 72 |thers wi|ll not r|
|00005940| 65 66 6c 65 63 74 20 6f | 6e 20 74 68 65 20 6f 72 |eflect o|n the or|
|00005950| 69 67 69 6e 61 6c 0a 61 | 75 74 68 6f 72 73 27 20 |iginal.a|uthors' |
|00005960| 72 65 70 75 74 61 74 69 | 6f 6e 73 2e 0a 0a 20 20 |reputati|ons... |
|00005970| 46 69 6e 61 6c 6c 79 2c | 20 61 6e 79 20 66 72 65 |Finally,| any fre|
|00005980| 65 20 70 72 6f 67 72 61 | 6d 20 69 73 20 74 68 72 |e progra|m is thr|
|00005990| 65 61 74 65 6e 65 64 20 | 63 6f 6e 73 74 61 6e 74 |eatened |constant|
|000059a0| 6c 79 20 62 79 20 73 6f | 66 74 77 61 72 65 0a 70 |ly by so|ftware.p|
|000059b0| 61 74 65 6e 74 73 2e 20 | 20 57 65 20 77 69 73 68 |atents. | We wish|
|000059c0| 20 74 6f 20 61 76 6f 69 | 64 20 74 68 65 20 64 61 | to avoi|d the da|
|000059d0| 6e 67 65 72 20 74 68 61 | 74 20 72 65 64 69 73 74 |nger tha|t redist|
|000059e0| 72 69 62 75 74 6f 72 73 | 20 6f 66 20 61 20 66 72 |ributors| of a fr|
|000059f0| 65 65 0a 70 72 6f 67 72 | 61 6d 20 77 69 6c 6c 20 |ee.progr|am will |
|00005a00| 69 6e 64 69 76 69 64 75 | 61 6c 6c 79 20 6f 62 74 |individu|ally obt|
|00005a10| 61 69 6e 20 70 61 74 65 | 6e 74 20 6c 69 63 65 6e |ain pate|nt licen|
|00005a20| 73 65 73 2c 20 69 6e 20 | 65 66 66 65 63 74 20 6d |ses, in |effect m|
|00005a30| 61 6b 69 6e 67 20 74 68 | 65 0a 70 72 6f 67 72 61 |aking th|e.progra|
|00005a40| 6d 20 70 72 6f 70 72 69 | 65 74 61 72 79 2e 20 20 |m propri|etary. |
|00005a50| 54 6f 20 70 72 65 76 65 | 6e 74 20 74 68 69 73 2c |To preve|nt this,|
|00005a60| 20 77 65 20 68 61 76 65 | 20 6d 61 64 65 20 69 74 | we have| made it|
|00005a70| 20 63 6c 65 61 72 20 74 | 68 61 74 20 61 6e 79 0a | clear t|hat any.|
|00005a80| 70 61 74 65 6e 74 20 6d | 75 73 74 20 62 65 20 6c |patent m|ust be l|
|00005a90| 69 63 65 6e 73 65 64 20 | 66 6f 72 20 65 76 65 72 |icensed |for ever|
|00005aa0| 79 6f 6e 65 27 73 20 66 | 72 65 65 20 75 73 65 20 |yone's f|ree use |
|00005ab0| 6f 72 20 6e 6f 74 20 6c | 69 63 65 6e 73 65 64 20 |or not l|icensed |
|00005ac0| 61 74 20 61 6c 6c 2e 0a | 0a 20 20 54 68 65 20 70 |at all..|. The p|
|00005ad0| 72 65 63 69 73 65 20 74 | 65 72 6d 73 20 61 6e 64 |recise t|erms and|
|00005ae0| 20 63 6f 6e 64 69 74 69 | 6f 6e 73 20 66 6f 72 20 | conditi|ons for |
|00005af0| 63 6f 70 79 69 6e 67 2c | 20 64 69 73 74 72 69 62 |copying,| distrib|
|00005b00| 75 74 69 6f 6e 20 61 6e | 64 0a 6d 6f 64 69 66 69 |ution an|d.modifi|
|00005b10| 63 61 74 69 6f 6e 20 66 | 6f 6c 6c 6f 77 2e 0a 0c |cation f|ollow...|
|00005b20| 0a 09 09 20 20 20 20 47 | 4e 55 20 47 45 4e 45 52 |... G|NU GENER|
|00005b30| 41 4c 20 50 55 42 4c 49 | 43 20 4c 49 43 45 4e 53 |AL PUBLI|C LICENS|
|00005b40| 45 0a 20 20 20 54 45 52 | 4d 53 20 41 4e 44 20 43 |E. TER|MS AND C|
|00005b50| 4f 4e 44 49 54 49 4f 4e | 53 20 46 4f 52 20 43 4f |ONDITION|S FOR CO|
|00005b60| 50 59 49 4e 47 2c 20 44 | 49 53 54 52 49 42 55 54 |PYING, D|ISTRIBUT|
|00005b70| 49 4f 4e 20 41 4e 44 20 | 4d 4f 44 49 46 49 43 41 |ION AND |MODIFICA|
|00005b80| 54 49 4f 4e 0a 0a 20 20 | 30 2e 20 54 68 69 73 20 |TION.. |0. This |
|00005b90| 4c 69 63 65 6e 73 65 20 | 61 70 70 6c 69 65 73 20 |License |applies |
|00005ba0| 74 6f 20 61 6e 79 20 70 | 72 6f 67 72 61 6d 20 6f |to any p|rogram o|
|00005bb0| 72 20 6f 74 68 65 72 20 | 77 6f 72 6b 20 77 68 69 |r other |work whi|
|00005bc0| 63 68 20 63 6f 6e 74 61 | 69 6e 73 0a 61 20 6e 6f |ch conta|ins.a no|
|00005bd0| 74 69 63 65 20 70 6c 61 | 63 65 64 20 62 79 20 74 |tice pla|ced by t|
|00005be0| 68 65 20 63 6f 70 79 72 | 69 67 68 74 20 68 6f 6c |he copyr|ight hol|
|00005bf0| 64 65 72 20 73 61 79 69 | 6e 67 20 69 74 20 6d 61 |der sayi|ng it ma|
|00005c00| 79 20 62 65 20 64 69 73 | 74 72 69 62 75 74 65 64 |y be dis|tributed|
|00005c10| 0a 75 6e 64 65 72 20 74 | 68 65 20 74 65 72 6d 73 |.under t|he terms|
|00005c20| 20 6f 66 20 74 68 69 73 | 20 47 65 6e 65 72 61 6c | of this| General|
|00005c30| 20 50 75 62 6c 69 63 20 | 4c 69 63 65 6e 73 65 2e | Public |License.|
|00005c40| 20 20 54 68 65 20 22 50 | 72 6f 67 72 61 6d 22 2c | The "P|rogram",|
|00005c50| 20 62 65 6c 6f 77 2c 0a | 72 65 66 65 72 73 20 74 | below,.|refers t|
|00005c60| 6f 20 61 6e 79 20 73 75 | 63 68 20 70 72 6f 67 72 |o any su|ch progr|
|00005c70| 61 6d 20 6f 72 20 77 6f | 72 6b 2c 20 61 6e 64 20 |am or wo|rk, and |
|00005c80| 61 20 22 77 6f 72 6b 20 | 62 61 73 65 64 20 6f 6e |a "work |based on|
|00005c90| 20 74 68 65 20 50 72 6f | 67 72 61 6d 22 0a 6d 65 | the Pro|gram".me|
|00005ca0| 61 6e 73 20 65 69 74 68 | 65 72 20 74 68 65 20 50 |ans eith|er the P|
|00005cb0| 72 6f 67 72 61 6d 20 6f | 72 20 61 6e 79 20 64 65 |rogram o|r any de|
|00005cc0| 72 69 76 61 74 69 76 65 | 20 77 6f 72 6b 20 75 6e |rivative| work un|
|00005cd0| 64 65 72 20 63 6f 70 79 | 72 69 67 68 74 20 6c 61 |der copy|right la|
|00005ce0| 77 3a 0a 74 68 61 74 20 | 69 73 20 74 6f 20 73 61 |w:.that |is to sa|
|00005cf0| 79 2c 20 61 20 77 6f 72 | 6b 20 63 6f 6e 74 61 69 |y, a wor|k contai|
|00005d00| 6e 69 6e 67 20 74 68 65 | 20 50 72 6f 67 72 61 6d |ning the| Program|
|00005d10| 20 6f 72 20 61 20 70 6f | 72 74 69 6f 6e 20 6f 66 | or a po|rtion of|
|00005d20| 20 69 74 2c 0a 65 69 74 | 68 65 72 20 76 65 72 62 | it,.eit|her verb|
|00005d30| 61 74 69 6d 20 6f 72 20 | 77 69 74 68 20 6d 6f 64 |atim or |with mod|
|00005d40| 69 66 69 63 61 74 69 6f | 6e 73 20 61 6e 64 2f 6f |ificatio|ns and/o|
|00005d50| 72 20 74 72 61 6e 73 6c | 61 74 65 64 20 69 6e 74 |r transl|ated int|
|00005d60| 6f 20 61 6e 6f 74 68 65 | 72 0a 6c 61 6e 67 75 61 |o anothe|r.langua|
|00005d70| 67 65 2e 20 20 28 48 65 | 72 65 69 6e 61 66 74 65 |ge. (He|reinafte|
|00005d80| 72 2c 20 74 72 61 6e 73 | 6c 61 74 69 6f 6e 20 69 |r, trans|lation i|
|00005d90| 73 20 69 6e 63 6c 75 64 | 65 64 20 77 69 74 68 6f |s includ|ed witho|
|00005da0| 75 74 20 6c 69 6d 69 74 | 61 74 69 6f 6e 20 69 6e |ut limit|ation in|
|00005db0| 0a 74 68 65 20 74 65 72 | 6d 20 22 6d 6f 64 69 66 |.the ter|m "modif|
|00005dc0| 69 63 61 74 69 6f 6e 22 | 2e 29 20 20 45 61 63 68 |ication"|.) Each|
|00005dd0| 20 6c 69 63 65 6e 73 65 | 65 20 69 73 20 61 64 64 | license|e is add|
|00005de0| 72 65 73 73 65 64 20 61 | 73 20 22 79 6f 75 22 2e |ressed a|s "you".|
|00005df0| 0a 0a 41 63 74 69 76 69 | 74 69 65 73 20 6f 74 68 |..Activi|ties oth|
|00005e00| 65 72 20 74 68 61 6e 20 | 63 6f 70 79 69 6e 67 2c |er than |copying,|
|00005e10| 20 64 69 73 74 72 69 62 | 75 74 69 6f 6e 20 61 6e | distrib|ution an|
|00005e20| 64 20 6d 6f 64 69 66 69 | 63 61 74 69 6f 6e 20 61 |d modifi|cation a|
|00005e30| 72 65 20 6e 6f 74 0a 63 | 6f 76 65 72 65 64 20 62 |re not.c|overed b|
|00005e40| 79 20 74 68 69 73 20 4c | 69 63 65 6e 73 65 3b 20 |y this L|icense; |
|00005e50| 74 68 65 79 20 61 72 65 | 20 6f 75 74 73 69 64 65 |they are| outside|
|00005e60| 20 69 74 73 20 73 63 6f | 70 65 2e 20 20 54 68 65 | its sco|pe. The|
|00005e70| 20 61 63 74 20 6f 66 0a | 72 75 6e 6e 69 6e 67 20 | act of.|running |
|00005e80| 74 68 65 20 50 72 6f 67 | 72 61 6d 20 69 73 20 6e |the Prog|ram is n|
|00005e90| 6f 74 20 72 65 73 74 72 | 69 63 74 65 64 2c 20 61 |ot restr|icted, a|
|00005ea0| 6e 64 20 74 68 65 20 6f | 75 74 70 75 74 20 66 72 |nd the o|utput fr|
|00005eb0| 6f 6d 20 74 68 65 20 50 | 72 6f 67 72 61 6d 0a 69 |om the P|rogram.i|
|00005ec0| 73 20 63 6f 76 65 72 65 | 64 20 6f 6e 6c 79 20 69 |s covere|d only i|
|00005ed0| 66 20 69 74 73 20 63 6f | 6e 74 65 6e 74 73 20 63 |f its co|ntents c|
|00005ee0| 6f 6e 73 74 69 74 75 74 | 65 20 61 20 77 6f 72 6b |onstitut|e a work|
|00005ef0| 20 62 61 73 65 64 20 6f | 6e 20 74 68 65 0a 50 72 | based o|n the.Pr|
|00005f00| 6f 67 72 61 6d 20 28 69 | 6e 64 65 70 65 6e 64 65 |ogram (i|ndepende|
|00005f10| 6e 74 20 6f 66 20 68 61 | 76 69 6e 67 20 62 65 65 |nt of ha|ving bee|
|00005f20| 6e 20 6d 61 64 65 20 62 | 79 20 72 75 6e 6e 69 6e |n made b|y runnin|
|00005f30| 67 20 74 68 65 20 50 72 | 6f 67 72 61 6d 29 2e 0a |g the Pr|ogram)..|
|00005f40| 57 68 65 74 68 65 72 20 | 74 68 61 74 20 69 73 20 |Whether |that is |
|00005f50| 74 72 75 65 20 64 65 70 | 65 6e 64 73 20 6f 6e 20 |true dep|ends on |
|00005f60| 77 68 61 74 20 74 68 65 | 20 50 72 6f 67 72 61 6d |what the| Program|
|00005f70| 20 64 6f 65 73 2e 0a 0a | 20 20 31 2e 20 59 6f 75 | does...| 1. You|
|00005f80| 20 6d 61 79 20 63 6f 70 | 79 20 61 6e 64 20 64 69 | may cop|y and di|
|00005f90| 73 74 72 69 62 75 74 65 | 20 76 65 72 62 61 74 69 |stribute| verbati|
|00005fa0| 6d 20 63 6f 70 69 65 73 | 20 6f 66 20 74 68 65 20 |m copies| of the |
|00005fb0| 50 72 6f 67 72 61 6d 27 | 73 0a 73 6f 75 72 63 65 |Program'|s.source|
|00005fc0| 20 63 6f 64 65 20 61 73 | 20 79 6f 75 20 72 65 63 | code as| you rec|
|00005fd0| 65 69 76 65 20 69 74 2c | 20 69 6e 20 61 6e 79 20 |eive it,| in any |
|00005fe0| 6d 65 64 69 75 6d 2c 20 | 70 72 6f 76 69 64 65 64 |medium, |provided|
|00005ff0| 20 74 68 61 74 20 79 6f | 75 0a 63 6f 6e 73 70 69 | that yo|u.conspi|
|00006000| 63 75 6f 75 73 6c 79 20 | 61 6e 64 20 61 70 70 72 |cuously |and appr|
|00006010| 6f 70 72 69 61 74 65 6c | 79 20 70 75 62 6c 69 73 |opriatel|y publis|
|00006020| 68 20 6f 6e 20 65 61 63 | 68 20 63 6f 70 79 20 61 |h on eac|h copy a|
|00006030| 6e 20 61 70 70 72 6f 70 | 72 69 61 74 65 0a 63 6f |n approp|riate.co|
|00006040| 70 79 72 69 67 68 74 20 | 6e 6f 74 69 63 65 20 61 |pyright |notice a|
|00006050| 6e 64 20 64 69 73 63 6c | 61 69 6d 65 72 20 6f 66 |nd discl|aimer of|
|00006060| 20 77 61 72 72 61 6e 74 | 79 3b 20 6b 65 65 70 20 | warrant|y; keep |
|00006070| 69 6e 74 61 63 74 20 61 | 6c 6c 20 74 68 65 0a 6e |intact a|ll the.n|
|00006080| 6f 74 69 63 65 73 20 74 | 68 61 74 20 72 65 66 65 |otices t|hat refe|
|00006090| 72 20 74 6f 20 74 68 69 | 73 20 4c 69 63 65 6e 73 |r to thi|s Licens|
|000060a0| 65 20 61 6e 64 20 74 6f | 20 74 68 65 20 61 62 73 |e and to| the abs|
|000060b0| 65 6e 63 65 20 6f 66 20 | 61 6e 79 20 77 61 72 72 |ence of |any warr|
|000060c0| 61 6e 74 79 3b 0a 61 6e | 64 20 67 69 76 65 20 61 |anty;.an|d give a|
|000060d0| 6e 79 20 6f 74 68 65 72 | 20 72 65 63 69 70 69 65 |ny other| recipie|
|000060e0| 6e 74 73 20 6f 66 20 74 | 68 65 20 50 72 6f 67 72 |nts of t|he Progr|
|000060f0| 61 6d 20 61 20 63 6f 70 | 79 20 6f 66 20 74 68 69 |am a cop|y of thi|
|00006100| 73 20 4c 69 63 65 6e 73 | 65 0a 61 6c 6f 6e 67 20 |s Licens|e.along |
|00006110| 77 69 74 68 20 74 68 65 | 20 50 72 6f 67 72 61 6d |with the| Program|
|00006120| 2e 0a 0a 59 6f 75 20 6d | 61 79 20 63 68 61 72 67 |...You m|ay charg|
|00006130| 65 20 61 20 66 65 65 20 | 66 6f 72 20 74 68 65 20 |e a fee |for the |
|00006140| 70 68 79 73 69 63 61 6c | 20 61 63 74 20 6f 66 20 |physical| act of |
|00006150| 74 72 61 6e 73 66 65 72 | 72 69 6e 67 20 61 20 63 |transfer|ring a c|
|00006160| 6f 70 79 2c 20 61 6e 64 | 0a 79 6f 75 20 6d 61 79 |opy, and|.you may|
|00006170| 20 61 74 20 79 6f 75 72 | 20 6f 70 74 69 6f 6e 20 | at your| option |
|00006180| 6f 66 66 65 72 20 77 61 | 72 72 61 6e 74 79 20 70 |offer wa|rranty p|
|00006190| 72 6f 74 65 63 74 69 6f | 6e 20 69 6e 20 65 78 63 |rotectio|n in exc|
|000061a0| 68 61 6e 67 65 20 66 6f | 72 20 61 20 66 65 65 2e |hange fo|r a fee.|
|000061b0| 0a 0a 20 20 32 2e 20 59 | 6f 75 20 6d 61 79 20 6d |.. 2. Y|ou may m|
|000061c0| 6f 64 69 66 79 20 79 6f | 75 72 20 63 6f 70 79 20 |odify yo|ur copy |
|000061d0| 6f 72 20 63 6f 70 69 65 | 73 20 6f 66 20 74 68 65 |or copie|s of the|
|000061e0| 20 50 72 6f 67 72 61 6d | 20 6f 72 20 61 6e 79 20 | Program| or any |
|000061f0| 70 6f 72 74 69 6f 6e 0a | 6f 66 20 69 74 2c 20 74 |portion.|of it, t|
|00006200| 68 75 73 20 66 6f 72 6d | 69 6e 67 20 61 20 77 6f |hus form|ing a wo|
|00006210| 72 6b 20 62 61 73 65 64 | 20 6f 6e 20 74 68 65 20 |rk based| on the |
|00006220| 50 72 6f 67 72 61 6d 2c | 20 61 6e 64 20 63 6f 70 |Program,| and cop|
|00006230| 79 20 61 6e 64 0a 64 69 | 73 74 72 69 62 75 74 65 |y and.di|stribute|
|00006240| 20 73 75 63 68 20 6d 6f | 64 69 66 69 63 61 74 69 | such mo|dificati|
|00006250| 6f 6e 73 20 6f 72 20 77 | 6f 72 6b 20 75 6e 64 65 |ons or w|ork unde|
|00006260| 72 20 74 68 65 20 74 65 | 72 6d 73 20 6f 66 20 53 |r the te|rms of S|
|00006270| 65 63 74 69 6f 6e 20 31 | 0a 61 62 6f 76 65 2c 20 |ection 1|.above, |
|00006280| 70 72 6f 76 69 64 65 64 | 20 74 68 61 74 20 79 6f |provided| that yo|
|00006290| 75 20 61 6c 73 6f 20 6d | 65 65 74 20 61 6c 6c 20 |u also m|eet all |
|000062a0| 6f 66 20 74 68 65 73 65 | 20 63 6f 6e 64 69 74 69 |of these| conditi|
|000062b0| 6f 6e 73 3a 0a 0a 20 20 | 20 20 61 29 20 59 6f 75 |ons:.. | a) You|
|000062c0| 20 6d 75 73 74 20 63 61 | 75 73 65 20 74 68 65 20 | must ca|use the |
|000062d0| 6d 6f 64 69 66 69 65 64 | 20 66 69 6c 65 73 20 74 |modified| files t|
|000062e0| 6f 20 63 61 72 72 79 20 | 70 72 6f 6d 69 6e 65 6e |o carry |prominen|
|000062f0| 74 20 6e 6f 74 69 63 65 | 73 0a 20 20 20 20 73 74 |t notice|s. st|
|00006300| 61 74 69 6e 67 20 74 68 | 61 74 20 79 6f 75 20 63 |ating th|at you c|
|00006310| 68 61 6e 67 65 64 20 74 | 68 65 20 66 69 6c 65 73 |hanged t|he files|
|00006320| 20 61 6e 64 20 74 68 65 | 20 64 61 74 65 20 6f 66 | and the| date of|
|00006330| 20 61 6e 79 20 63 68 61 | 6e 67 65 2e 0a 0a 20 20 | any cha|nge... |
|00006340| 20 20 62 29 20 59 6f 75 | 20 6d 75 73 74 20 63 61 | b) You| must ca|
|00006350| 75 73 65 20 61 6e 79 20 | 77 6f 72 6b 20 74 68 61 |use any |work tha|
|00006360| 74 20 79 6f 75 20 64 69 | 73 74 72 69 62 75 74 65 |t you di|stribute|
|00006370| 20 6f 72 20 70 75 62 6c | 69 73 68 2c 20 74 68 61 | or publ|ish, tha|
|00006380| 74 20 69 6e 0a 20 20 20 | 20 77 68 6f 6c 65 20 6f |t in. | whole o|
|00006390| 72 20 69 6e 20 70 61 72 | 74 20 63 6f 6e 74 61 69 |r in par|t contai|
|000063a0| 6e 73 20 6f 72 20 69 73 | 20 64 65 72 69 76 65 64 |ns or is| derived|
|000063b0| 20 66 72 6f 6d 20 74 68 | 65 20 50 72 6f 67 72 61 | from th|e Progra|
|000063c0| 6d 20 6f 72 20 61 6e 79 | 0a 20 20 20 20 70 61 72 |m or any|. par|
|000063d0| 74 20 74 68 65 72 65 6f | 66 2c 20 74 6f 20 62 65 |t thereo|f, to be|
|000063e0| 20 6c 69 63 65 6e 73 65 | 64 20 61 73 20 61 20 77 | license|d as a w|
|000063f0| 68 6f 6c 65 20 61 74 20 | 6e 6f 20 63 68 61 72 67 |hole at |no charg|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.